一、extern与static的区别
在一个被引用的头文件.h .cpp中声明的变量是默认static属性的(只能在该文件内部使用),但是声明的函数是extern属性的(可以在其他文件进行使用),static的函数和变量只能在本文件的.h .cpp中被使用(是内链接的)
extern是属于外连接的,使用被extern修饰的函数在外面被调用可以不通过extern重新声明,
但是在外面使用extern修饰的变量时候必须加上extern声明一下(如果要使得一个变量具有external linkage,必须在定义时和声明时都得加上extern修饰符,如果不写编译器可能不会报错,xcode没有报错)
网友评论