为什么不编译?声明,然后定义一个类方法 - 为什么会出错?
class Test
{
void foo();
void foo()
{ }
};
但这些将编译:
void bar();
void bar()
{ }
// In same header/file
class Test
{
void foo();
};
void Test::foo()
{ }
编译器会说,给定的方法cannot be overloaded。方法Test::foo
未被重载 - 它是具有完全相同签名的相同函数。
@StoryTeller ^应该是一个答案:) – Curious
每个成员必须在类内声明一次。每个定义也是一个声明。 –
@StoryTeller很好的答案不需要标准报价!特别是对于这样的事情。标准报价的答案是如果正确的答案虽然 – Curious