[解決済み] エラー: '...'のメンバー '...'が非クラス型である場合のリクエスト
2021-12-30 10:17:39
質問
2つのコンストラクタを持つクラスがあります。1つは引数を取らないもの、もう1つは引数を取るものです。
引数を1つ取るコンストラクタを使用してオブジェクトを作成すると、期待通りに動作します。しかし、引数を取らない方のコンストラクタを使用してオブジェクトを作成すると、エラーが発生します。
私は2つのコンストラクタを持つクラスを書きました。1つは引数が1つで、もう1つは引数がないものです。
class Foo
{
public:
Foo() {};
Foo(int a) {};
void bar() {};
};
int main()
{
// this works...
Foo foo1(1);
foo1.bar();
// this does not...
Foo foo2();
foo2.bar();
return 0;
}
オブジェクトのコンストラクタを引数1つで作成すると正常に動作しますが、引数なしでオブジェクトのコンストラクタを作成するとエラーが発生します(g++ 4.0.1 でコンパイル)。
nonclass.cpp: In function ‘int main(int, const char**)’:
nonclass.cpp:17: error: request for member ‘bar’ in ‘foo2’, which is of non-class type ‘Foo ()()’
解決方法は?
Foo foo2();
に変更する。
Foo foo2;
コンパイラが
Foo foo2()
関数宣言として、名前 'foo2'、戻り値の型 'Foo' を指定しています。
しかし、その場合、次のように変更すると
Foo foo2
というエラーが表示されることがあります。
" call of overloaded ‘Foo()’ is ambiguous"
.
関連
-
InstallShield でホスト名から IP アドレスを取得するコード
-
linux シェル学習ノート 2日目
-
FcScript V1.0 ヘルプファイル(説明書付き
-
[解決済み] file(file, "rt") のエラー : complete.cases プログラム内の無効な 'description' 引数
-
[解決済み】lm.fit(x,y,offset = offset, singular.ok,...) boxcox式で0非NAケースでエラーになる。
-
[解決済み】例外:AAPT2エラー:詳細はログを確認してください。
-
[解決済み] MIPSのフェッチアドレスがワード境界にアライメントされていないため、.align 4を使用したが、まだうまくいかない
-
[解決済み] [Solved] libpthread.so.0: error adding symbols: コマンドラインからDSOが見つからない
-
[解決済み】コンストラクタの継承
-
[解決済み】C++でファクトリーメソッドパターンを正しく実装する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
CE5.2版を使って、武術のベースサイトである第一レベルのメソッドを見つける(グラフィックチュートリアル)。
-
FcScript V1.0 ヘルプファイル(説明書付き
-
[解決済み】C++ -- ' の前に一次式があることが予想される。
-
[解決済み】アプリケーション起動メソッドで例外が発生 java.lang.reflect.InvocationTargetException
-
[解決済み】c++のコンパイルエラーです。ISO C++はポインタと整数の比較を禁止しています。
-
[解決済み】 c++ "Incomplete type not allowed" クラス参照情報へのアクセスエラー (前方宣言による円環状依存性)
-
[解決済み] ポインタからキャストを使わずに整数を返す [-Wint-conversion] 戻り値の候補を作る
-
[解決済み】mysqli_fetch_array() は、パラメータ 1 が mysqli_result であることを期待し、boolean は【重複】で与えられました。
-
[解決済み】二重の空きや破損(fasttop)
-
[解決済み】ログアウトと再ログインをせずに.bashrcの設定を再読み込みする方法とは?