首页 > 代码库 > extern inline volatile explicit

extern inline volatile explicit

 1. extern是一个关键字,它告诉编译器存在着一个变量或者一个函数,如果在当前编译语句的前面中没有找到相应的变量或者函数,也会在当前文件的后面或者其它文件中定义
 2. 调用extern "C"关键字,声明cpp文件中有关代码,需要按照C的方式来生成

 

 1. 在函数声明或定义中函数返回类型前加上关键字inline即把该函数指定为内联
 2. 关键字inline必须与函数定义体放在一起才能使函数成为内联,仅将inline放在函数声明前面不起任何作用。
 3. 定义在类声明之中的成员函数将自动地成为内联函数

 

1. volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象

 

1. explicit是为了防止隐式使用拷贝构造函数的
class Test1{public:	Test1(int n)	{		num = n;	}private:	int num;};class Test2{public:	explicit Test2(int n)	{		num = n;	}private:	int num;};int main(void)  {	Test1 t1 = 12;	//Test2 t2 = 12;  error 不能隐式转换	Test2 t3(12);};

 

extern inline volatile explicit