次の質問から受け入れられた回答に従って、私のおもちゃの言語でboost::anyをエミュレートしようとしています。
私は持てます、
Element e1 = 11;
Element e2 = 12.1;
+ をオーバーロードしたいので、
e3 = e1 + e2;
しかし、実行時に e1 が int を保持するか double を保持するかはわかりませんが、数値になります。では、正しい Get メソッドを呼び出すことができるように、どのような種類の要素が保持されているかを示す変数も保存されるように const を変更するにはどうすればよいでしょうか。
template /typename Datatype/
Element(Datatype InitialValue)
{
StoredValue = new ValueStorage(InitialValue);
}
また、例外がなく、-fno-rtti をコンパイラに渡し、stdlib または boost を使用できないマイクロプロセッサでこれを行っています。