在命名空间中前向声明类

2024-03-01

我很惊讶地发现我无法使用范围解析运算符从另一个范围转发声明一个类,即

class someScope::someClass;

相反,必须按如下方式使用完整声明:

namespace
{
    class someClass;
}

有人可以解释为什么会这样吗?

更新:为了澄清,我问why情况就是如此。


您不能在其名称空间之外声明类,因为编译器无法识别该类的类型某些范围.

命名空间{}需要声明命名空间的存在,然后声明类某个类进入你的范围。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在命名空间中前向声明类 的相关文章

随机推荐