web-dev-qa-db-ja.com

エラーC2679:バイナリ '<<':タイプ 'std :: string'の右側のオペランドを取る演算子が見つかりません(または、受け入れ可能な変換はありません)

ここに私のコードがありますが、このエラーを修正するにはどうすればよいですか?

#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)
21
SpikeThea

#include <string>を忘れました

ヘッダーを含めずにstd::stringを使用すると、<string>の一部を間接的に<iostream>またはその他のヘッダーにインポートする一部のコンパイラーで機能しますが、これは標準ではなく、依存しないでくださいまた、実装の一部のみが含まれ、operator<<を実装する部分が欠落しているため、文字列を出力しようとすると破損することがよくあります。

52
user1942027