linux ubuntu 'string' はこのスコープで宣言されていない Parse
2022-02-17 16:47:37
linux ubuntu では、'string' がこのスコープで宣言されていない場合にエラーが発生します。
以下のようにエラーが報告されます。
- test2.h:5:17: error: 'string' is not member of 'std'.
- aries@ubuntu:~/aries/Makefile/Demo$ g++ -o main main.cpp
- main.cpp:1:0からインクルードされたファイルにあります。
- test1.h:5:17: error: variable or field 'test1_cout' declared 無効
- test1.h:5:17: error: 'string' is not declared in. この スコープ
- main.cpp:2:0からインクルードされたファイルにあります。
- test2.h:5:17: error: variable or field 'test2_cout' declared 無効
- test2.h:5:17: error: 'string' is not declared in. この スコープ
- aries@ubuntu:~/aries/Makefile/Demo$。
1
error.h
- #ifndef _ERROR_1_
- #define _ERROR_1_
- #include<cstring>
- <スパン
- <スパン 空白 cout_1(string a1);
- <スパン
- <スパン #endif
error.c
- #include<error.h>
- #include<iostream>
- 使用 名前空間 stdです。
- 空白 cout_1(string str)
- {
- cout << str<< endl;
- }
- <スパン int main()
- {
- cout_1( "test" );
- 戻る 0;
- }
ランニング効果。
- aries@ubuntu:~/aries/Makefile/Demo$ g++ -o error error.cpp
- aries@ubuntu:~/aries/Makefile/Demo$ . /error
- テスト
2 mainを単独で持ち出すとどうなるか?
error_h.cpp
error.cを修正する
- #include"error.h"
- #include"error_h.cpp"
- #include<iostream>
- 使用 名前空間 stdです。
- <スパン int main()
- {
- cout_1( "test" );
- 戻る 0;
- }
以下のように実行されます。
- aries@ubuntu:~/aries/Makefile/Demo$ g++ -o error error.cpp
- error.cpp:1:0 からインクルードされたファイルにあります。
- error.h:5:13: error: variable or field 'cout_1' declared 無効
- error.h:5:13: error: 'string' was not declared in この スコープ
- error.cpp:2:0 からインクルードされたファイルにあります。
- error_h.cpp:3:13: error: variable or field 'cout_1' declared 無効
- error_h.cpp:3:13: エラー: 'string' が この スコープ
- error.cpp: 関数' int main()'とします。
- error.cpp:9:15: error: 'cout_1' is not declared in. この スコープ
OK! また上記の問題が出てきました。
質問です。なぜc++はcのようになれないのでしょうか?
3 グーグルを試してみました
その後、ネットで答えを探します。このエラーは次のような場合に発生します。
関連
-
コマンドラインからDSOが見つからないことに遭遇した
-
ERR_CONTENT_LENGTH_MISMATCH 問題解決のためのハンドブック
-
エラーについて: error: 'QApplication app' variable has initializer but incomplete type
-
metasploitに関するいくつかのアーキテクチャカタログ
-
Haproxy の「502 Bad Gateway サーバーが無効または不完全な応答を返しました」を解決する。
-
socket.errorを解決する。[Errno 98] アドレスが既に使用されている問題
-
プロセスデッド、アクティブな例外なしで呼び出された終了、シグナル11
-
テキストファイルのビジー状態解消
-
mfsmount トランスポートエンドポイントが接続されていない
-
Ubuntu 20.04 プロキシ設定
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
警告:文字列定数から 'char *' への非推奨変換
-
gcc コンパイル時にオペランドがバイナリに変換されない -解決方法
-
Pythonの各種実行時エラー(SyntaxError : invalid syntaxなど)。
-
パイプが壊れた java.io.IOException: パイプの破損 解決方法
-
SocketExceptionです。ブロークン・パイプ・エラーの可能性
-
linux 24, バックグラウンド処理 nohup コマンド
-
mysqldumpです。エラーが発生しました。1066: ユニークなテーブル/エイリアスではありません
-
プログラム "gcc "がPATHに見つからない
-
テキストファイルのビジー状態
-
中国標準のKirin OSのyumソースの構成