我知道问题似乎模棱两可,但是我想不出其他任何方式来表达它,但是,是否可以做这样的事情:

#include<iostream>

class wsx;

class wsx
{
public:
wsx();
}

wsx::wsx()
{
std::cout<<"WSX";
}

最佳答案

是的,那是可能的。以下只是声明wsx

class wsx;

这种声明称为前向声明,因为两个类相互引用时需要使用它:
class A;
class B { A * a; };

class A { B * b; };

然后需要向前声明其中之一。

关于c++ - 是否可以在不实现的情况下声明一个类? (C++),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/871475/

10-12 20:50