1

officeもちろん、動物を処理する獣医のオフィスをシミュレート するクラスがあります。

私は別のクラスを持っていdogます。犬のいくつかのインスタンスを office クラス内のキューに生成して、動物を先入れ先出しで処理したいと考えています。

プリミティブ データ型を扱うときにキューを使用する方法は理解していますが、キューと adt に関してはいくつかの問題で混乱しています。

Office ヘッダー ファイルでキュー自体を実装するにはどうすればよいですか? 私はそれが公共のセクションに行くと仮定しています.Privateセクションはクリニックの名前、オフィスの住所などの情報のためのものです.(間違っていたら訂正してください!)しかし、私は信じていませんヘッダー ファイル内でキューを使用できるようにするだけinclude <queue>で、これをどのように回避できますか?

4

2 に答える 2

2

あなたの説明に基づいて、私はこの順序で何かから始めます:

#include <queue>

class office { 
    std::queue<dog> patients;
public:
    void enter(dog const &d) { patients.push(d); }

    void treat() { 
        dog patient = patients.front(); 
        patients.pop(); 
        do_treatment(patient); 
    }
};

もちろん、このクラスのdog前にクラスを定義する必要があります。

于 2012-12-06T04:54:13.030 に答える
0

テンプレート プログラミングを使用して、'テンプレート化された' キューまたはベクター オブジェクトを作成したい。

例えば

#inlcude<vector>

class MyFancyClass; //define elsewhere
MyFancyClass ob1,ob2 ,obn; //instantiate objects
std::vector<MyFancyClass> container;

container.push_back(ob1);
container.push_back(ob2);
container.push_back(ob3);

そうは言っても、オブジェクトをコピーするのではなく、オブジェクトへのポインターを Queue または Vector に格納する必要があります。

于 2012-12-06T04:53:47.690 に答える