C ++ и имена объектов классов

когда у меня есть класс, и я делаю объект этого класса, например:

    class Sample{
...
};

int main(){ Sample object1; ...}

Является ли название объекта просто адресом к нему? Когда я посылаю имя объекта класса в качестве аргумента функции рекурсивно, я просто посылаю адрес, не копируя весь объект в памяти?

0

Решение

Имя — это не адрес, а имя. Он существует в вашем исходном коде и при компиляции, но в остальном нет вообще (вроде). Это семантическая конструкция, а не значение в памяти.

Правила того, что происходит с объектом, имя которого вы используете в своем коде, можно найти в вашей книге C ++. В общем, копии выполняются по умолчанию — чтобы избежать копирования, вы передаете по ссылке или передаете указатель на объект.

5

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector