C ++没有在名称空间外声明的类主体的类

时间:2017-07-24 18:54:34

标签: c++ class templates namespaces

我对C ++编程很陌生,而且我自己也在尝试教它。当我看一些代码时,我注意到以下内容:

#ifndef _someclass_h_
#define _someclass_h_

class A;
class B;
class C;

namespace somenamespace{

class SomeClass 
{
public: 

...
};
}

我对在命名空间外声明的类A,B和C感到困惑,而没有任何类主体。这是做什么的? 它与模板有关吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

这些是前瞻性声明。 C ++程序员使用前向声明来避免必须包含类定义的头文件。

类A,B和C在全局名称空间中声明。