コード内のすべてのエラーを説明しようとします:
Class Someother
{
Boardmain.functionA(); // Error 1
}
class BoardMain
{
functionA // Error 2
{
B(); // Error 3
}
}
Class B1:public BoardMain() // Error 4
{
B(){ // Error 5
}
}
エラー 1
クラス内で直接メソッドを呼び出していますが、C++ では不可能です。メソッドから呼び出します。
別のクラスからメソッドを静的に呼び出そうとした後は、オブジェクトのインスタンスではありません。ここで選択する必要があります:
Boardmain
キーワードを使用して、このメソッドをクラスで静的に宣言しますstatic
のインスタンスを作成しBoardmain
、メソッドを呼び出します。例:
class Someother
{
public: // public accessibility
Someother() // Constructor of the class
{
Boardmain obj; // Object creation
obj.functionA(); // Calling the method
}
};
最後に、クラスを宣言している時点Someother
で、クラスBoardmain
はまだコンパイラに認識されていません...ここでエラーが発生します...
エラー 2
戻り値の型も引数もなしで関数を宣言していますが、これも C++ では不可能です。コンストラクタには少なくとも()
が必要です。
この例は正しいです:
class BoardMain
{
void functionA() // Does not return anything and does not take argument
{
}
};
エラー 3
という名前の関数を呼び出してB
いますが....それは何ですか?? B1
?で宣言されたメソッド
エラー 4
クラスが別のクラスを継承する場合、正しい宣言は次のとおりです。
class B1:public BoardMain // no () a the end
エラー 5
繰り返しますが、このメソッドを正しく宣言していません。コンストラクターにしたい場合は、クラスと同じ名前にする必要があります。
class B1 : public BoardMain
{
B1(){ // Private constructor
}
};
ちなみに、class
キーワードはC ++では常に小文字です。class
また、宣言の最後にはセミコロンがあります。
C++ を学ぶには良い本を買うべきです。それが必要なようです。
に関するドキュメントは次のclass
とおりです。 http://www.cplusplus.com/doc/tutorial/classes/