有一个类 A,所有声明和定义都放在里面,如下所示:
class A
{
void f(); // forward declaration for a lengthy method
...
void g()
{
f(); // call the above forward-declared method
}
void f() // definition of a lengthy method
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
我不想像 A::f() 那样将 f() 从类头中取出,但只想将所有源保留在类中。但是,当我编译它时,出现以下错误:
error C2535: 'void A::f()': member function already defined or declared
note: see declaration of 'A::f'
Run Code Online (Sandbox Code Playgroud)
难道就没有办法解决这个问题吗?