在C++11中处理泛型值的正确方法是什么,还是可以使用(void *)?
基本上,我正在解析json,节点值可以是String、Integer、Double、Date等。
在C中,只使用void *是可以的(不安全,但可以),而在C#中,我们使用Object。但是,在C++11中做这件事的正确方法是什么呢?我需要构建一个包装类,还是有更简单的方法?
发布于 2015-02-05 07:51:09
您可以为各种类型创建一个基类,或者使用一个“受歧视的联合”类,比如Boost.Variant,它包含一组已知的类型,并记住它所持有的类型。
https://stackoverflow.com/questions/28338702
复制相似问题