开始
众所周知,在C++里有很多头文件:<iostream><iomanip><vector>……
大家有没有发现,这些头文件都是用“< >”框起来的?因为他们都是C++作者帮你写的。
有一些人就喜欢自力更生,想要写一个属于自己的头文件,该怎么写呢?今天博主就教大家写一个自定义头文件!废话不多说,我们开始吧~
实现
首先在DEV里新建一个文件。
然后把这个框架写好(文字处记得自己填全哦~)。
#ifndef _自定义头文件名称_H_
#define _自定义头文件名称_H_
#include <bits/stdc++.h>//万能头
//把需要的头文件写这里
//定义函数a
……
//定义函数b
……
……
#endif
在这里我举个例子:
注意❗:第一行和第二行的自定义头文件名称为全部大写的英文字母与下划线组成的!
#ifndef _INCLUDE_SAMPLE_H_
#define _INCLUDE_SAMPLE_H_
#include <bits/stdc++.h>//万能头
#include<windows.h>
using namespace std;
//类型
struct index{///指数类型
bool b;
long long ll;
};
//判断
bool is_odd(long long n){//奇数判断
if(n%2==1)return true;
else return false;
}
bool is_even(long long n){//奇数判断
if(n%2==0)return true;
else return false;
}
bool is_prime(long long n){//判断质数
if(n==0||n==1)return false;
for(int i=2;i<=int(sqrt(n));i++){
if(n%i==0)return false;
}
return true;
}
index inx(long long n){//指数分析
int c_2=0,c_5=0;
index q;
int m=n,m2=m;
while(m!=0){
if(m%5==0){
m/=5;
c_5++;
}else{
break;
}
}
while(m2!=0){
if(m2%2==0){
m2/=2;
c_2++;
}else{
break;
}
}
int t=(c_2>c_5?c_5:c_2);
if(t==0){
q.b=false;
q.ll=1;
}else{
q.b=true;
q.ll=pow(10,t);
}
return q;
}
bool is_composite(long long n){//素数判断
if(n==0||n==1)return false;
for(int i=2;i<=int(sqrt(n));i++){
if(n%i==0)return true;
}
return false;
}
bool is_triangle(int a,int b,int c){//三角形判断
if(a+b>c&&b+c>a&&c+a>b)return true;
else return false;
}
//常量
long double pai(){
return acos(-1.0);
}
long double e(){
long double s=1,z=1;
const int n=30;
for(int i=1;i<=n;i++)
{
s=s*i;
z+=1.0/s;
}
return z;
}
//运算
long long gcd( long long m,long long n){//最大公因数
while(1){
int r=m%n;//存余数
if(r==0){//判断r是否等于0
return n;//返回
}else{
m=n;//辗转
n=r;
}
}
}
//其他
void color(string s,int front_color,int back_color){//颜色
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(handle, BACKGROUND_INTENSITY | back_color*16 |FOREGROUND_INTENSITY | front_color);
cout<<s;
SetConsoleTextAttribute(handle, FOREGROUND_INTENSITY | 7);
/*
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 10 = 淡绿色
3 = 浅绿色 11 = 淡浅绿色
4 = 红色 12 = 淡红色
5 = 紫色 13 = 淡紫色
6 = 黄色 14 = 淡黄色
7 = 白色 15 = 亮白色
*/
}
#endif
然后给大家讲一讲如何用自定义头文件!
框架:
#include <bits/stdc++.h>
#include "自定义头文件名称.h"
/*
注意!:1.这个自定义头文件一定要用双引号括起来,别用尖括号
2.自定义头文件必须得写“.h”
*/
using namespace std;
int main(){
…………
return 0;
}
下面的是我举得例子。
#include <bits/stdc++.h>
#include "include_simple.h"
/*
注意!:1.这个自定义头文件一定要用双引号括起来,别用尖括号
2.自定义头文件必须得写“.h”
*/
using namespace std;
int main(){
//这里我随便调用几个"include_simple.h"里的几个函数
color("这是一个头文件的测试",11,5);
cout<<endl;
cout<<gcd(1000,1234)<<endl;
cout<<is_odd(11);
return 0;
}
由于程序有些多,所以程序难免会写错。如果大家发现了错误,请在评论区纠错。(不喜勿喷哦~~~)
大家学废了么?今天就讲到这里,我们下期再见!