stringbuilder-太没有道理了,g++编译这么简单的程序出现错误:‘string’不是一个类型名

问题描述

太没有道理了,g++编译这么简单的程序出现错误:‘string’不是一个类型名
using namespace std;
#include

template
class tree_node_t
{
public:
string &to_string(string *result int prefix = 0);
void set_data(const T &data);

protected:
T m_data;
};

vs编译得好好的,g++怎么了,老是这些莫名其妙的错误?哪位高手能看出端倪指教一下啊?谢谢!

解决方案

原来要加#include <iostream>,调试g++真麻烦,不知道vs怎么不用呢???

解决方案二:
第二行尖括号和里面的csting被csdn自动去掉了,源代码是有的

解决方案三:
#include <cstring>

解决方案四:
using namespace std;
#include <cstring>

template <typename T>
class tree_node_t
{
public:
string &to_string(string *result int prefix = 0);
void set_data(const T &data);

protected:
T m_data;
};

vs编译得好好的,g++怎么了,老是这些莫名其妙的错误?哪位高手能指教一下啊?谢谢!

解决方案五:
错误报告说:‘string’不是一个类型名
真的莫名其妙!不是有using namespace std;#include <cstring>吗??即使用std::string也不行

解决方案六:
#include
#include
using namespace std;

时间: 2024-11-20 21:24:49

stringbuilder-太没有道理了,g++编译这么简单的程序出现错误:‘string’不是一个类型名的相关文章

g++编译出的多线程程序出错“segmentation fault&quot;

 g++编译出的多线程程序出错"segmentation fault" 我使用的g++版本是g++ 4.4.3 升级到4.7版本:add-apt-repository ppa:ubuntu-toolchain-r/testapt-get updateapt-get install gcc-4.7-baseapt-get install gcc-4.7apt-get install g++-4.7 update-alternatives --install /usr/bin/gcc

Vista下使用VS2008编译.EXE的C#程序 出现错误&amp;amp;quot;无法加载 DLL“api_clnt.dll”: 应用程序无法启动,因为应用程序的并行配置不正确。有关详细信息,请参阅应用程序事件日志。 (异常来自 HRESULT:0x800736B1)&amp;amp;quot;。

问题描述 Vista下使用VS2008编译.EXE的C#程序出现错误"无法加载DLL"api_clnt.dll":应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志.(异常来自HRESULT:0x800736B1)".api_clnt.dll是由C++语言实现的我想问下这个错误是由VISTA系统引起的,还是VS2008引起的呢,因为之前在XP系统下用VS2005编译时是正确的还有怎么解决谢谢 解决方案 解决方案二:先给自己顶下解决方

gcc编译报错:程序中有游离的‘\357’‘\273’‘\277’等 解决方法

原文:http://www.cnblogs.com/lidp/archive/2009/06/17/1697886.html 造成的原因主要有两个: 1. 程序(*.c,*.h)中使用了中文的标点符号(全角),比如:,},+. 改成英文的标点半角符号就行了. 甚至有时候空格也会出现类似错误,删掉该空格 重新输入. vim里面做类似替换还是很容易的. 如何看到报错的符号? od -c hello.c > log.txt 在log中就能看到符号了 2.  如果替换成了英文标点还出错的话,还报此错误,

统计学生成绩的c,编译没报错,运行错误

问题描述 统计学生成绩的c,编译没报错,运行错误 #include /*这是一个查询学生成绩的程序,查询数学,英语,语文,计算并算出总成绩*/ /*首先,显示输入学生人数,然后显示输入各科成绩,最后按照学号排序输出各科 成绩.最后计算并显示出各科成绩的平均值,最大值,最小值*/ /*在main函数中既有printf1函数,scanf函数,printf2函数,arg函数,min函数 max函数*/ void input(double s[][4],int n); void output(doubl

关于gcc和g++编译c文件时的一点疑惑

问题描述 关于gcc和g++编译c文件时的一点疑惑 普遍观点,gcc把c文件当做c处理,把c++当做c++处理:而g++把二者都当做c++处理.这里的处理是指语法分析那一步. 但g++在编译过程中调用了gcc.我疑惑了,语法分析是编译的第二步吧,既然g++调用了gcc,那么它是怎么让gcc把c文件当做c++处理的. 还有一点,就是对于c文件编译出来的符号,使用gcc和g++到底一不一样.比如在c文件里定义int add(int a,int b):用gcc和g++最后编译出来的符号到底是什么?是c

cpp 编译环境-g++编译错误但cl编译成功

问题描述 g++编译错误但cl编译成功 /* file: 1config3.cc test class template contain static data members test __STL_STATIC_TEMPLATE_MEMBER_BUG,defined in ref c++ primer 3/e p.839 * * */ #include using namespace std; template class testClass{ public: static int _data

makefile-在linux写的一个简单的程序 编译不能通过 求大神给看看

问题描述 在linux写的一个简单的程序 编译不能通过 求大神给看看 解决方案 总共有3个文件 test.h test.cpp main.cpp; 在main.cpp内部调用test类实现的方法,执行make命令后,可以生成test.o和main.o但是好像链接的时候有问题, 不能生成目标问题 解决方案二: 找出问题来了 是makefile文件写的有问题 编译应该使用g++ 代码有问题的地方 希望各位指正 解决方案三: 提示信息是函数没有定义,链接返回错误.

文件传输-java 编译出现找不到符号错误

问题描述 java 编译出现找不到符号错误 //导入包import javax.swing.JPanel;import javax.swing.JFrame;import javax.swing.JButton;import javax.swing.JTextArea;import javax.swing.JTextField;import static java.awt.BorderLayout.*;import javax.swing.JScrollPane;import java.awt.

CB编译好的Exe程序运行会提示找不到xx库之类的解决方法

CB的完全编译问题,大概是初学BCB的朋友们问的最多的问题. 症状就是编译好的Exe程序拷到没有安装BCB的机器上运行会提示找不到xx库之类的,解决方法: 在project->Options->Compiler中点击Release, 在project->Options->Packages中取消Builder with runtime packages的对钩 在project->Options->Linker中取消Use dynamic RTL前的对钩