Вопрос об уникальном указателе классов (инициализация переменных в .h VS в конструкторе)C++

Программы на C++. Форум разработчиков
Гость
Вопрос об уникальном указателе классов (инициализация переменных в .h VS в конструкторе)

Сообщение Гость »


Я новичок, начинающий с уникального указателя unique_ptr, и у меня есть вопрос по ним:

Если у меня есть класс A и внутри него .h, у меня есть другой класс B, например:

класс А{ Б б; публика: А(); } (учтите включенные)

Если я хочу создать unique_ptr для A, в чем разница для B в этих случаях:

(unique_ptr a = make_unique())

Случай 1:

класс А{ В б = б(1); публика: А(); } и случай 2:

класс А{ Б б; публика: А(); } внутри конструктора A():

A::A() { б = б(1); } Кажется, что использование B внутри A для каждого из них отличается, но я не понимаю, почему.

Вернуться в «C++»