1. ホーム
  2. c++

[解決済み】エラー C2679: 二項 '<<' : 右側のオペランドが 'std::string' 型である演算子が見つからない (または許容できる変換が存在しない)

2022-02-08 05:30:15

質問

以下は私のコードです。このエラーを修正するにはどうしたらいいですか?

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

解決方法は?

を忘れています。 #include <string>

を使って std::string の一部を間接的にインポートしているコンパイラでは、 ヘッダを含めないでも動作します。 <string> の中に <iostream> などのヘッダがありますが、これは標準ではないので当てになりません。また、文字列を出力しようとすると、実装の一部しか含まれていないため、よく壊れます。 operator<< .