Wywołanie konstruktora wewnątrz metody

0

mam np. taką klase

class moja_klasa
{
       private:
              int a;
       public:
              moja_klasa();
              moja_klasa(int x);
              void pobierz(void);
}

metoda pobierz działa tak

void moja_klasa::pobierz(void)
{
        int x;
        cout << "Podaj liczbe: ";
        cin >> x;
        // tutaj chciałbym wywołac konstruktor i przekazać pobrane parametry
}

a konstruktor tak

moja_klasa::moja_klasa() {}
moja_klasa::moja_klasa(int x)
{
      a = x;
}

jak wywołać taki konstruktor w metodzie.
w tym przykładzie chodzi mi oto że skoro konstruktor służy do inicjalizowania zmienny wewnątrz klasy. poco tworzyć metodę do ustawiani pobranych danych
jak można zwalić robotę na konstruktor, o ile to możliwe.

poprawienie znaczników na <code class="cpp"> - fp

0

czyli się nie da?? muszę napisać osobna metodę która w zasadzie będzie wyglądać jak konstruktor??

0

Bezsensowna praktyka tworzyc w ogole takie cudo jak pobierz. Na moje oko, masz 2 wyjscia:

  1. Wstrzykiwac dane do klasy nie martwiac sie zbytnio skad te dane sa.
  2. Mozesz przedefinowac operator >> i uzyc go w main, w ten sposob:
moja_super_klasa a;
cin >> a;

1 użytkowników online, w tym zalogowanych: 0, gości: 1