c++ プログラムが "field has incomplete type" 問題でコンパイルされる
2022-02-15 18:59:21
ネットで調べてみると、クラスや構造体の前方宣言は、ポインタオブジェクトやリファレンスの定義にしか使えないらしく、コンパイラがまだ定義を発見しておらず、クラスや構造体の内部メンバを知らないので、オブジェクトを具体的に構成する方法がなく、エラーになるとのことです。
クラスのメンバをポインタに変更するのは問題ありません。このプログラムでは 不完全な型 事前宣言は、データ隠蔽に役立ちます。オブジェクトを呼び出すセグメントでは、宣言されたオブジェクトへの参照またはポインタのみを使用するように要求します。
を使用することはできません。 不完全な型 .
この問題が発生した理由は、ヘッダーファイルでstd名前空間を参照せずに文字列型を使っていたため、エラーが発生したため、文字列をstd::stringに変更するだけです。
ヘッダーファイルでusingを使用すると、名前の衝突の問題が発生することがあります。
関連
-
[解決済み】C++ アルゴリズム的に単純な再帰的回文チェッカー
-
[解決済み】関数が1つの引数を取らない c++
-
[解決済み] operator = must be non-static member」とはどういう意味ですか?
-
[解決済み] タイプはコールオペレータを提供しない
-
[解決済み] クラス・コンストラクタの呼び出しに一致する関数がない
-
[解決済み] Qt: -lGL が見つからないエラー
-
[解決済み] std vector C++ -- ディープコピーまたはシャローコピー
-
[解決済み] Perlin Noiseを用いた2D地形生成(タイルベース)
-
[解決済み] エラー: 異なる型での typedef 再定義
-
[解決済み] makefile のエラー: main への未定義の参照
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「Expected '(' for function-style cast or type construction」エラーの意味とは?
-
[解決済み】コンパイラーエラー C4430: 型指定子がない - int を想定 [重複].
-
[解決済み】c++エラー:配列の添え字に無効な型 'int[int]' があります。
-
[解決済み] 'setprecision' は 'std' のメンバではありません。
-
[解決済み] 環境変数 ProgramFiles, ProgramW6432Dir, ProgramFilesDir (x86), CommonProgramFiles のデータの出典は何でしょうか?
-
[解決済み] 4294967295(32bitでの最高値)はなぜ-1になるのですか?
-
[解決済み] C++ブラックジャックプログラムを修正する方法を見つけ出す問題 [重複].
-
[解決済み] プロセスは255 (0xff) コードブロックを返しました [閉鎖]。
-
[解決済み] this' ポインタを 'const Line' から 'Line &' に変換できない?
-
[解決済み] return文に複数の値を含める必要があるのはなぜですか?