1、問題描述
有這樣一個函數
void setInfo(const std::map<std::string,std::string>& config)
{
std::string a = config["aaa"];
}
2、編譯現象
如標題
3、解釋
config變量是一個const的,但是在內部函數里調用了這個變量的符號重載函數"[ ]",而我們規定const是不能被修改,但是調用這個函數就有被修改的風險,故編譯報錯
4、解決
可以在函數后面加一個const,或者把config前面的const去掉