鱼C论坛

 找回密码
 立即注册
查看: 1875|回复: 0

为什么extern自定义的class变量会报错?

[复制链接]
发表于 2014-7-18 20:03:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 隐袭战龙 于 2014-7-18 22:22 编辑

在ExternVariable.h中有如下代码:#include "Myclass.h"
extern Myclass myclass;在Myclass.h中的代码:
class Myclass
{

};
这是PublicVariable.cpp的代码:
Myclass myclass;
这是main.cpp的代码:
#include "ExternVariable.h"
int main()
{
    myclass.func();
    return 0;
}
为什么编译器报错?
错误内容:
1>f:\test\ExternVariable.h(1): error C2146: 语法错误: 缺少“;”(在标识符“myclass”的前面)
1>f:\test\ExternVariable.h(1): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>f:\test\ExternVariable.h(1): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int

如果不要extern,则提示找不到表示符myclass(不是找不到定义)

求帮助,谢谢



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 16:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表