2

C#では、次のようなものを使用できます。

MyClass c = new MyClass();
c.Properties.Add("another property", "another value");

これはC++で行う必要があります。VS 2012を使用しています。何かアイデアはありますか?

編集済み:マップまたは任意のリストを使用して、プロパティをオブジェクトに保存できることを知ってください。

void ObjectProperty::addItem(string key, XProperty p) 
{
     _object[key] = p;
}
4

1 に答える 1

6

オブジェクトに「プロパティ」を追加するだけでは不十分です。オブジェクトの概念は、コンパイル時に完全に実行されます。実行時に、CPUは、特定のメモリブロックが「オブジェクト」と呼ばれることや、クラスのインスタンスと呼ぶことにしたものを認識しません。

(C ++にはプロパティがないため、これ自体は興味深いものです)

名前で参照するデータフィールドが必要な場合は、標準の連想コンテナのいずれかが必要な処理を実行する必要があります。

于 2012-10-27T22:48:38.373 に答える