Я хочу добавить перегрузку оператора [] в моем классе.Перегрузка операторов - это не то, что мне приходилось делать раньше.
Я хочу написать реализацию, которая сделает следующее:
myclass a;
a["test"] = 123;
int test = a["test"];
Пока в моем классе прототип выглядит так:
string operator[](const char* cpszLabel);
Реализация не завершена и выглядит следующим образом:
string myclass::operator[](const char* cpszLabel) {
string strContent;
if ( cpszLabel != nullptr ) {
}
return strContent;
}
В чем я не уверен, так это в том, как ссылаться на назначаемые данные или для этого требуетсяПерегрузка '=' тоже?
Я добавил перегрузку для оператора '=', но это не вызывается:
Прототип:
string operator=(int intData);
Реализация:
string myclass::operator=(int intData) {
char szString[24];
sprintf(szString, "\"%d\"", intData);
return string(szString);
}