"" に関する原因と対処

このコンパイルエラーの原因と対処に関して説明します。

スポンサード リンク

Microsoft Visual C++にて以下のソースでコンパイルエラーが発生します:

コンパイルエラーメッセージ:
error C2819: クラス 'std::basic_ostream<char,std::char_traits<char>>' にはオーバーロードされたメンバー 'operator ->' がありません。C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\iosfwd(679): note: 'std::basic_ostream<char,std::char_traits<char>>' の宣言を確認してください

ソース(バグ有り):

#include <iostream>
#include <string>
#include <map>

using namespace std;
int main()
{
//連想配列を定義します。キーは string型、データは int 型を指定しています。
map<string, int> data;
data["shift_jis"] = 932;
data["ascii"] = 437;
cout -> "shift_jis = " << data["shift_jis"] << endl;
cout << "ascii = " << data["ascii"] << endl; }


原因:


対処:


ソース(修正済み):

#include <iostream>
#include <string>
#include <map>

using namespace std;
int main()
{
//連想配列を定義します。キーは string型、データは int 型を指定しています。
map<string, int> data;
data["shift_jis"] = 932;
data["ascii"] = 437;
cout << "shift_jis = " << data["shift_jis"] << endl;
cout << "ascii = " << data["ascii"] << endl; }

スポンサード リンク



[コンパイルエラーコード、メッセージに戻る]