Я хочу инициализировать элемент класса, который также является другим объектом класса. Проблема в том, что я должен инициализировать элемент с помощью переменных, которые Я выясняю после выполнения некоторых операций над моим конструктором. Позвольте мне показать пример кода.Инициализация объекта в другом объекте класса (после выполнения некоторых операций над этим конструктором.)
class Child_class
{
private:
int var1, var2, var3;
public:
DateTime(int var1 = 1970, int var2 = 1, int var3 = 1);
};
второй класс:
class Owner_class
{
private:
Child_class foo;
public:
// I have to make some string split operations on string_var variable
// and get some new variables.After that, I need to initialize child_class with new variables
Owner_class(string string_var, int test);
}
Один из способов сделать это, я знаю, что я мог бы написать:
Owner_class::Owner_class():
Child_class(new_var1,new_var2,new_var3) {
// but since I'll find new_var1,new_var2 and new_var3 here.I couldnt use this method.
// Am I right ?
}
Есть ли кто-нибудь помочь мне? благодарим заранее!
Нет, вы не могли бы это написать. Вы могли бы написать 'foo (new_var1, new_var2, new_var3)' хотя. –
@LuchianGrigore Я думаю, что делать это так, что это приведет к созданию нового локального объекта вместо того, что я хочу сделать. – Bambi
Скомпилировали? 'Child_class (new_var1, new_var2, new_var3)' в списке инициализаторов даст вам ошибку. –