VC++中的string类要包含什么头文件?

我在看一本VC++的书的时候发现上面的例子都是直接用例如string a="hello"; 这样的句子,但是我自己在机子上面发现string是不能被编译器识别的,说是没有声明的变量。是不是要包含什么头文件??
谢谢热心的大家~~
包含string貌似不对哦,我已经试过了
这个是c语言里面的用法,好像
===========================
为什么要包含名字空间??

第1个回答  2007-07-26
如果不是在MFC里的话,请在C/C++的Category中选Code Generation,然后Use run-time library选Multithreaded,然后再:
#include <afx.h>
#include <afxtempl.h>
...
Cstring s;
如果是在MFC里的话,Cstring可以直接使用,不需要自己再加头文件了
第2个回答  2007-07-25
要包函string头文件.
示例如下:
#include <string>
using namesapce std;
------------------------
我晕,你见过C语言里有用namespace吗,有头文件不加.h的吗?
你自己再想想吧,要不你反你的代码发给我看看,并且告诉我你的编译错误提示信息.
------------------------
因为sting类包函在std这个名称空间,所以使用std名称空间.本回答被提问者采纳
第3个回答  2007-07-26
在MFC中注意字母的大小写!!头2个都是大写 CString
第4个回答  推荐于2018-08-16
string是C++系统提供的一个类,封装了常用的字符串操作。
要使用string类,对于标准的C++编译器,需要包含头文件string,注意是没有扩展名的。

#include <string>
不过对于VC++,由于微软做了一些变通,所有无扩展名的头文件均可以用带.h扩展名的代替,于是包含string.h也是可以的。

#include <string.h>

除此外,还有要引入std名空间,或者在当前名空间声明string,才可以直接使用string类,否则需要以std::string形式使用。
以下两种方式均可。
using namespace std;//引入整个名空间

using std::string;//只声明string本身。本回答被网友采纳
第5个回答  2007-07-26
#include <string>
using namespace std;
这样就可以了
包含名字空间似乎是固定用法吧
学的时候那些程序都有这个...