当前位置: 首页 > 知识库问答 >
问题:

C编译错误:具有初始化器但类型不完整

葛子昂
2023-03-14

我在Eclipse中编写代码,有如下内容:

#include <ftream>
#include <iostream>

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

但是,当我尝试构建时,会出现以下错误:变量'std::istringstream iss'具有初始值设定项,但类型不完整

有什么想法吗?我在谷歌上搜索过,似乎大多数有这个问题的人根本没有包含正确的头文件,我相信我做得是正确的。

共有2个答案

严兴旺
2023-03-14

`请包括以下任何一项:

`#include<sstream>`

using std::istringstream; 
赵君植
2023-03-14

您需要的信息包括:

#include <sstream>
 类似资料:
  • 首先是一些背景。正如C 17标准所述: [vector.overview]/3如果分配器满足分配器完整性要求17.6,则在实例化vector时可使用不完整类型T。3.5.1.T应在引用向量的任何结果特化成员之前完成。 我在本回购协议中尝试了3种方案(代码复制在底部): 包含不完整向量类型的类在同一头文件中声明(默认ctor/dtor)并定义 编译用b. h包括: 编译用b. h包括: 我的问题是,

  • 请考虑以下示例: 如果我理解正确的话,根据https://en.cppreference.com/w/cpp/language/zero_initialization,它不能抛出,因为应该对B::A执行零初始化,就像对“没有构造函数的值初始化类类型的成员”一样。 如果它抛出,是编译器错误还是我遗漏了什么? 编辑:我在英特尔网站上提交了一个bug:https://community.intel.co

  • thread_test.cpp:32:22:注意:候选项为: /usr/include/c++/4.6/thread:133:7:注意:std::thread::thread(_callable&&,_args&&...)[with_callable=void(a::*)(),_args={}] /usr/include/c++/4.6/线程:133:7:注意:参数1从''到'void(A::*&

  • 我安装了Java-11-openjdk-amd64,并在usr/lib/jvm/Java-11-openjdk-amd64/bin/java的auto中运行了它,在我的桌面上安装了Scala 2.11.12和spark 2.2.0以及Hadoop2.7,在windows 10上运行了linux mint VM19.2。我在打开Spark-shell时出错: 我还在主目录中的。bashrc文件中定义

  • 我正在尝试实现EJB命令来通信两个jsf项目。 我创建了一个EAR,其中有我的两个jsf项目+ejb。