这是我的代码,如何修复此错误?
#include "stdafx.h"
#include <iostream>
using namespace std;
int main()
{
string title = "THE WORLD OF PIRATES";
cout << title << endl;
cout << " Welcome to the world of pirates";
cin.get();
return 0;
}
错误是
binary '<<' : no operator found which takes a right-hand operand of type 'std::string' (or there is no acceptable conversion)
答案 0 :(得分:50)
您忘了#include <string>
使用std::string
而不包括它的标题适用于某些编译器,这些编译器将<string>
的部分间接导入其<iostream>
或其他标题中,但这不是标准的,不应该依赖。此外,当您尝试输出字符串时,它们经常会中断,因为它们只包含实现的一部分,并且缺少实现operator<<
的部分。