Como posso inicializar variáveis ​​de membro do objeto C ++ no construtor?

Eu tenho uma classe que tem alguns objetos como variáveis ​​de membro. Eu não quero que os construtores para esses membros sejam chamados quando declarados, então estou tentando segurar um ponteiro para o objeto explicitamente. Não faço ideia do que estou fazendo. o_O

No StackOverflow, pareço ser capaz de encontrar outros exemplos de variáveis ​​de membro de objeto, mas geralmente o construtor é chamado imediatamente, assim:

class MyClass {
    public:
        MyClass(int n);
    private:
        AnotherClass another(100); // this constructs AnotherClass right away!
};

Mas eu quero oMyClass construtor para chamar oAnotherClass construtor. Aqui está o meu código:

BigMommaClass.h

#include "ThingOne.h"
#include "ThingTwo.h"

class BigMommaClass {

        public:
                BigMommaClass(int numba1, int numba2);

        private:
                ThingOne* ThingOne;
                ThingTwo* ThingTwo;
};

BigMommaClass.cpp

#include "BigMommaClass.h"

BigMommaClass::BigMommaClass(int numba1, int numba2) {
        this->ThingOne = ThingOne(100);
        this->ThingTwo = ThingTwo(numba1, numba2);
}

Aqui está o erro que estou recebendo quando tento compilar:

g++ -Wall -c -Iclasses -o objects/BigMommaClass.o classes/BigMommaClass.cpp
In file included from classes/BigMommaClass.cpp:1:0:
classes/BigMommaClass.h:12:8: error: declaration of âThingTwo* BigMommaClass::ThingTwoâ
classes/ThingTwo.h:1:11: error: changes meaning of âThingTwoâ from âclass ThingTwoâ
classes/BigMommaClass.cpp: In constructor âBigMommaClass::BigMommaClass(int, int)â:
classes/BigMommaClass.cpp:4:30: error: cannot convert âThingOneâ to âThingOne*â in assignment
classes/BigMommaClass.cpp:5:37: error: â((BigMommaClass*)this)->BigMommaClass::ThingTwoâ cannot be used as a function
make: *** [BigMommaClass.o] Error 1

Estou usando a abordagem correta, mas a sintaxe errada? Ou eu deveria estar vindo de uma direção diferente?

questionAnswers(5)

yourAnswerToTheQuestion