读书人

若是把其他文件include了就不需要ex

发布时间: 2013-03-12 11:19:35 作者: rapoo

要是把其他文件include了,就不需要extern什么事了吧?
比如1.cpp和2.cpp在一个工程里,2.cpp要使用1.cpp定义的int a需要自己定义一个extern int c。
那如果2。cpp #include了1.cpp,那不就不需要再自己定义一个extern了吗?
[解决办法]
应该是你只单独编译了1.cpp,如果一起编译的话,那么应该会报b重复定义的错误。
一边的做法是,2.cpp定义b变量,然后2.h中extern b变量,这样其它模块只需要include 2.h即可。

引用:
我在1.cpp;里面写了个int b=12;
在2.cpp里写的:
#include<stdio.h>
int b;
void main()
{
printf("b is %d",b);
}
还是可以成功打印b啊?!没用extern也可以。。。

读书人网 >C++

热点推荐