2017-09-29 4 views
0

Das Haupt enthält einen Vektor. Es erstellt ein Foo foo-Objekt; dann fügt foo's Konstruktor 1 zum Vektor in main hinzu. Wie kann das gemacht werden?Hinzufügen zu einem Vektor von einem anderen Objekt zu dem Objekt, das das Objekt erstellt hat

foo.cpp

foo::foo() 
{ 
    mainvector.push_back(1); 
} 

main.cpp

int main() 
{ 
    std::vector<int> mainvector; 
    Foo foo; 

    return 0; 
} 

Ich kann meinen Kopf zu wickeln, um dies zu sein scheinen.

+0

Sind Sie fragen, wie Sie diese oder zur Arbeit kommen, warum es funktioniert? Dies kann gemacht werden, um zu arbeiten, aber es ist schrecklich Stil. –

+0

Sorry, wenn ich unklar bin. Ich möchte in der Lage sein, ein Objekt zu erstellen und dieses Objekt 1 zu dem im Hauptverzeichnis deklarierten Vektor hinzuzufügen. – Prezioso

Antwort

2

Sie könnten dies tun.

Unter der Annahme, das ist, wie foo.h aussieht:

class Foo { 
    public: 
     Foo(std::vector<int> & vec) { 
      vec.push_back(<something>); 
     } 
} 

Das Haupt sein könnte:

std::vector<int> mainvec; 
Foo foo(mainvec); 
Verwandte Themen