У меня есть функция A (), которая возвращает указатель на объект. В функции B () я пытаюсь изменить член этого объекта следующим образом:
void B()
{
ObjType o = *getObj();
o.set("abc");
}
Объект o хранится в массиве, и когда я печатаю значение члена, кажется, что ничего не произошло, и член все еще имеет старое значение;
Решение довольно простое:
void B()
{
ObjType * o = getObj();
o->set("abc");
}
Это работает. Но для меня это совершенно так же, как первый образец. Кто-нибудь может объяснить это?