如何在地图中使用字符串

How to use string in map?

本文关键字:字符串 地图      更新时间:2023-10-16
#include<iostream>
#include<map>
#include<string>
using namespace std;
int main()
{
    multimap<char,string> m1;

    m1.insert(pair<char,string>('A','def'));
    m1.insert(pair<char,string>('B','ghi'));
    m1.insert(pair<char,string>('C','jkl'));

    multimap<char,string>::iterator it;
    cout<<"The elements of m1 are:"<<endl;
    cout<<"tKEYtVALUEn"<<endl;
    for(it=m1.begin();it!=m1.end();it++)
    {
        cout<<'t'<<it->first
        <<'t'<<it->second<<endl;
    }
    cout<<endl;

}

我希望输出到 A def但我发现了错误。如何纠正?

MapMulti.cpp [错误] 从 'int' 到 'const std::basic_string&' 的用户定义转换无效 [-fallowive]

地图多字符.cpp [警告] 多字符字符常量 [-wmultichar]

    m1.insert(pair<char,string>('A',"def"));
    m1.insert(pair<char,string>('B',"ghi"));
    m1.insert(pair<char,string>('C',"jkl"));

字符串文字是双引号"likethis",但字符是"s"