C++ 编译错误:具有初始化程序但类型不完整
Posted
技术标签:
【中文标题】C++ 编译错误:具有初始化程序但类型不完整【英文标题】:C++ compile error: has initializer but incomplete type 【发布时间】:2012-11-05 20:40:44 【问题描述】:我在 Eclipse 中编码,并且有如下内容:
#include <ftream>
#include <iostream>
void read_file()
char buffer[1025];
std::istringstream iss(buffer);
但是,当我尝试构建时,出现以下错误:variable 'std::istringstream iss' has initializer but incomplete type
有什么快速的想法吗?我用谷歌搜索了一下,似乎大多数有这个问题的人根本没有包含正确的头文件,我相信我做得正确。
【问题讨论】:
std::istringstring
?不过,它无论如何都在 <sstream>
标头中。
哎呀,我打错了问题,我按照你写的方式编码所以问题还是一样
是的,添加 #include<fstream>
而不是#include <ftream>
@Aneem
【参考方案1】:
你需要的包括:
#include <sstream>
【讨论】:
这实际上是标准库中的一个错误;找到了类,但没有找到使程序员对要包含的文件一无所知的方法,除非他牢记标准库文件名,这是一个荒谬的期望。我希望有人将其报告为错误。 @jriv 我不确定你在说什么。 cppreference 明确指出必须包含sstream
标头才能使用std::istringstream
。 en.cppreference.com/w/cpp/io/basic_istringstream【参考方案2】:
` 请包括以下任何一项:
`#include<sstream>`
using std::istringstream;
【讨论】:
以上是关于C++ 编译错误:具有初始化程序但类型不完整的主要内容,如果未能解决你的问题,请参考以下文章
GCC - 将宏用于函数属性时出现“具有初始化程序但类型不完整”错误
变量“fstream grabpass”具有初始化程序但类型不完整
Qt 错误:C:\Users\user-pc\Proj1\main.cpp:6: 错误:变量 'QApplication prog' 具有初始化程序但类型不完整 QApplication prog(a