2011-01-10 17 views
0

クラスをいくつか使用したいと思っています。私は、このクラスの2つのオブジェクトを生成するこのクラスの関数(generate)を呼び出したいと思います。これら2つのオブジェクトは、クラスの他の機能を呼び出します。 これを行う方法を教えてもらえますか?私は今、この関数は例の2つのオブジェクトを作成する必要がありますし、)(other_func呼び出します生成独自のオブジェクトを生成するクラス関数

Class Example{ 
public: 
generate(); 
other_func(); 

} 

int main() 
{ 
Example generate(); 
} 

C++でそれをしたい 。

+1

私は理解していません。いくつかの擬似コードなどを作ってください。 –

答えて

0

さて、あなたの説明から、それは非常に簡単に聞こえるでしょう:クラスの既存のメンバーなしで呼び出すことができるクラスの

struct Example 
{ 
public: 

    static void generate() { Example e1, e2; e1.other_fun(); e2.other_fun(); } 
    void other_fun() { } 
}; 
0

factory methodsを使用すると、指定されたクラスのオブジェクトを生成できます。ビジネスロジック処理に基づいて作成されたオブジェクトは、他のメソッドを呼び出すことができます。

0

のみメンバ関数は静的メンバ関数です。

class foo 
{ 
public: 
    static void generate() 
    { 
     foo Temp1; 
     foo Temp2; 
     Temp1.bar(); 
     Temp2.bar(); 
    } 

    void bar() 
    { 

    } 
}; 

編集:私は、戻り値の型を削除これは、だからここに私はあなたが求めているように見えるものを行い、FOOSを返しFOOを作成http://www.cprogramming.com/tutorial/statickeyword.html

を深トピックで、より参照してくださいされますリクエストごとに 編集:今回は完全に戻り値の型を正しく削除しました。しかし、今私はコードをコンパイルしてテストしていない。

+0

Results配列は不要であるだけでなく、何も追加しないだけでなく、正しい結果を得られませんでした。 Results配列は自動的な項目であり、あなたはそれに対してdelete []を呼び出しました!それだけでなく、それが含まれている必要がある項目を削除できませんでした。これを-1にする必要があります。 –

+0

私はちょうど彼が戻り値の型を望んでいないことを見たので、私はすぐにそれを削除しました。もう一度修正します... – Sqeaky

関連する問題