& ldquo; make: entity --regenerate & rdquo; создает неправильную (?) функцию

Взято из [blog]: http://sickprogrammersarea.blogspot.in/2014/03/technical-interview-questions-on-c_6.html

Глубокая копия предполагает использование содержимого одного объекта для создания другого экземпляра того же класса. В глубокой копии оба объекта могут содержать одну и ту же информацию, но целевой объект будет иметь свои собственные буферы и ресурсы. уничтожение любого объекта не повлияет на оставшийся объект. Перегруженный оператор присваивания создаст глубокую копию объектов.

Неглубокая копия включает в себя копирование содержимого одного объекта в другой экземпляр того же класса, создавая таким образом зеркальное изображение. Благодаря прямому копированию ссылок и указателей два объекта будут иметь одно и то же содержимое, содержащее внешний контент другого объекта, чтобы быть непредсказуемым.

Объяснение:

Используя конструктор копирования, мы просто копируем элемент данных принимает член. Этот метод копирования называется мелкой копией. Если объект является простым классом, состоящим из встроенных типов и без указателей, это будет приемлемым. Эта функция будет использовать значения и объекты, и ее поведение не будет изменено с помощью мелкой копии, копируются только адреса указателей, которые являются членами, а не значение, на которое указывает адрес. Значения данных объекта затем будут непреднамеренно изменены функцией. Когда функция выходит за пределы области видимости, копия объекта со всеми его данными удаляется из стека.

Если объект имеет какие-либо указатели, необходимо выполнить глубокую копию. С глубокой копией объекта память выделяется для объекта в свободном хранилище, а отмеченные элементы копируются. Для объектов, возвращаемых функцией, используется глубокая копия.

1
задан Théo Driutti 5 March 2019 в 15:49
поделиться

1 ответ

Это действительно похоже на ошибку, они, вероятно, не обрабатывают обнуляемые случаи внутри генератора.

Может быть, попробовать orphanRemoval на стороне объявления отношения, было бы интересно, что произойдет тогда:

0
ответ дан Siqu 5 March 2019 в 15:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: