なぜこれはコンパイルされませんか?宣言し、クラスメソッドを定義する - なぜエラー?
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