【发布时间】:2011-12-01 10:09:56
【问题描述】:
类有外部链接吗?如果是这样,为什么我不能让以下内容在 gcc 上工作?
// mycpp1.cpp
class MyClass
{
int x;
// ......
};
`
// mycpp2.cpp
class MyClass; // why doesn't this work?
我已经做了一些谷歌搜索并解决了这个问题,
C++ 标准
(3.5/4) 命名类(第 9 条),或定义在 typedef 声明,其中类具有 typedef 名称 链接目的 (7.1.3);
我可以只包含文件,但链接的目的是什么?
【问题讨论】:
-
why doesn't this work是什么意思? -
@Nawaz:这意味着如果我尝试在
mycpp.cpp中声明它的对象,MyClass是未声明的 -
@user974191:我猜到了。所以我发布了关于你应该如何做的答案。
标签: c++