constに問題があります。私が持っていると言う:
class A{
friend std::ostream& operator<<(std::ostream& os,const A& myObj);
private:
std::map<int,int> someMap;
int someInteger;
};
std::ostream& operator<<(std::ostream& os,const A& myObj){
os<<myObj.someInteger<<std::endl;
os<<myObj.someMap[0]<<std::endl;
}
この種のコードは、マップとのconstの競合が原因でコンパイル時にエラーを生成し(マップ値を出力する行にコメントを付けると、すべて問題ありません)、関数プロトタイプの「const」を削除すると、すべて問題ありません。どこに問題があるのか本当にわかりません。
何か助けてください?