1

私はプログラミング言語が初めてです。実行時に異なるデータ型を 1 つの変数に格納する方法はありますか。元:

class a
{
    void b(anydatatype var)
    int ab;
}
void a::b(anydatatype var)
{
    ab = var;
    //how can i make this possible to assign any data type to that int?
}

テンプレートを使用せずに解決策が得られると非常に役立ちます

4

4 に答える 4

7

このユース ケースには組み込みの C++ ソリューションはありません。ただし、このタイプの機能を提供する C / C++ の上に構築されたライブラリがあります。

于 2013-07-24T16:18:59.557 に答える
0

void* を使用してさまざまな型の値を保持できますが、厳密に型指定された言語のすべての利点が失われます。Cello ( http://libcello.org/ ) は、このアプローチを使用して、C でダック タイピングのバージョンを実装します。

変数が保持できるさまざまな型をすべて知っている場合、共用体はその仕事に適したツールのように思えます。

于 2013-07-24T16:33:21.093 に答える