Скажем, у меня есть класс, который выглядит следующим образом:вектор <Class> или вектор <unique_ptr <Class>> в данном случае?
class Foo
{
int sam;
float fisher;
double irvin;
vector<Bar> lambert;
};
и я хочу, чтобы хранить экземпляры Foo
в вектор
vector<Foo> foos;
поскольку lambert
может содержать неопределенное количество Bar
с, может возразить нарезание происходит или вектор C++ довольно умен?
Было бы лучше использовать вектор unique_ptr
или я слишком переживаю об этом?
class Foo
{
...
vector<unique_ptr<Bar>> lambert;
};
Спасибо :)!
Я не вижу в вашем коде рекламы. Все, что у вас есть, это структура, содержащая вектор, и вы создаете вектор этих структур. – PaulMcKenzie
Чтобы иметь нарезку, вам нужно наследование. У вас есть наследование в вашем коде? – Borgleader
Что вы подразумеваете под "slicing"? Если вам нужны экземпляры 'Bar' в' Foo', тогда 'std :: vector' это путь. –
Pixelchemist