Я совершенно новое в C++, и я хотел бы узнать, хорошие практики с самого начала, так что мой вопрос объяснить на примере это:Включить объект внутри класса или лучше получить из этого класса?
Наличие:
class A
{
int mNumber;
};
Если мне нужно использовать класс A внутри класса B, что лучше? включить объект?
class B
{
A * mpA;
int mColor;
};
Или наследовать от класса A?
class B : public A
{
int mColor;
};
Есть ли хорошая привычка говорить в целом, как это сделать?
Ops! извините, я искал его, и я не мог найти ответ ... спасибо! :) – Breikdans
Дубликат, связанный Джоном, очень хорошо объясняет состав/наследование. Предпочитают композицию в этом случае. Но я бы добавил к аспекту C++: не делайте 'A * mpA', do' A mA'. Значение по умолчанию в C++ заключается в том, чтобы обрабатывать объекты как значения (они есть), и прибегать к динамическому распределению, если это необходимо. – Angew
@Angew 'A *' не подразумевает динамическое распределение. Если 'B' не принадлежит' mpA', не имеет смысла иметь объект как член, а указатель (умный или нет) - это путь. –