const 和static 如下图:
extern (外部类型)
它的作用在于告诉编译器:这个变量或者函数的定义在别的地方,当遇到此变量或函数时应到其他模块中寻找其定义。
在一个文件中定义的全局变量默认是外部的,及其作用域可以延伸到程序的其他文件中。但其他文件要使用这个文件中定义的全局变量,必须在使用前用extern作外部声明,外部声明通常放在文件的开头。变量定义时编译器为其分配存储空间,而变量声明指明该全局变量已在其他地方说明过,编译时系统不再分配存储空间,直接使用变量定义时所分配的空间。
extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般之包括函数名。
本文详细解释了C/C++编程语言中的extern关键字用途。extern用于声明一个变量或函数是在其他地方定义的,确保编译器能在其他模块中找到其定义。文章还介绍了如何使用extern C来确保C++代码能正确调用C语言代码。
1万+

被折叠的 条评论
为什么被折叠?



