C ++コンパイルエラー:初期化子がありますが、型が不完全です


104

私はEclipseでコーディングしていて、次のようなものがあります:

#include <ftream>
#include <iostream>

void read_file(){
    char buffer[1025];
    std::istringstream iss(buffer);
}

しかし、ビルドしようとすると、次のエラーが発生します。 variable 'std::istringstream iss' has initializer but incomplete type

簡単な考えはありますか?私はググってみましたが、この問題を抱えているほとんどの人は、私が正しく行っていると思う正しいヘッダーファイルを単に含んでいないようです。


11
std::istringstring?<sstream>とにかく、それはヘッダーにあります。
— chris

おっと、私は質問を間違って入力しました。あなたが書いた方法をコード化したので、問題は同じです
— Aneem

うん、<sstream>を追加すると正しくビルドされました、ありがとう!
— Aneem

2
再開の理由がわかりにくい。私はスキップして他の人に決定を任せますが、それは単純なエラーのようです。
— アーロンホール

回答:


234

これには次のものが必要です。

#include <sstream>

13
これは実際には標準ライブラリのバグです。クラスは見つかりましたが、プログラマーが標準ライブラリーのファイル名を暗記している場合を除いて、プログラマーがどのファイルを組み込むかを暗示するメソッドは見つかりませんでした。これはばかげた予想です。誰かがバグとして報告してくれることを願っています。
— j riv 2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.