2017-06-28 16 views
2

独自のキュークラスを作成するには、このクラスの関数内でクラス属性を宣言する必要があります。C++:ローカルスコープのクラスのアトリビュート

私は何をしようとしていることである:

私は機能addは、プログラムはオペレータ[]と後にアクセスするには、プライベートで、クラスに新しい属性を作成呼び出す

。これにより、任意のクラスの項目を使用して、タイプ制限のないキューを作成できます。

それは可能ですか?

編集

このキューは、単に使用するサンプルです。私は本当に問題がある:pythonで私はこれを行うことができます:

class Car: 
    def __init__ (self, ...): 
     ... 
     self.color = 'blue' 

、色は(Pythonで変数を宣言するためにインサートタイプを必要としないことを覚えているクラスのどこかで使用することができexempleでは、色。 __init__スコープで宣言されましたが、ローカル変数ではなくクラスの属性です)。 どうすればC++でこれを行うことができますか?

+0

タプル?バリデーションテンプレート? –

答えて

0

最初は不明な点があります。 異種の要素を持つキューを作成したいと思っています。異種のコンテナに対してこの回答を参照できます。

Heterogeneous containers in C++ タプルを使用して異種データを保持することもできます。

0

あなたが探している概念は、C++が動的に型付けされていないので、クラス定義の一部でなければならないメンバ変数です。クラス内でのみ表示するには、非公開にします。その値をコンストラクタの初期化子リストに設定できます。

class Car { 
public: 
    Car : color("blue") { } 
private: 
    std::string color; 
}; 
関連する問題