您的位置:首页 > 编程语言 > C语言/C++

C++学习——string和string.h

2015-08-18 15:22 232 查看
一直用c比较习惯,最近开始学C++,一开始就遇到了问题。如下的简单程序,string的使用。

#include<iostream>
#include<string.h>
using namespace std;
int main()
{
string str;
cin >> str;
for (auto c : str)
cout << c << endl;
}

VS提示错误如下:
错误
1
error C2679: 二进制“>>”: 没有找到接受“std::string”类型的右操作数的运算符(或没有可接受的转换)c:\users\likai\documents\visual studio 2013\projects\容器\容器\源.cpp71容器

2IntelliSense: 没有与这些操作数匹配的 ">>" 运算符

操作数类型为: std::istream >> std::stringc:\Users\likai\Documents\Visual Studio 2013\Projects\容器\容器\源.cpp76容器

仔细查看后,是自己将C中的string,h头文件在C++中使用,在C++中,string和string.h文件可以同时存在,string.h是C中的头文件。而在C++中误认为可行,导致运算符对>>对string不能辨别。所以应在C++中避免包括C标准库中的.h文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: