加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 有没有办法使用显式实例化按类型设置成员变量

发布时间:2020-12-16 09:49:28 所属栏目:百科 来源:网络整理
导读:我想要做的简化示例: 如果我有课: template typename Tclass Foo{public: Foo() : numericType(false){};private: bool numericType;} 如果T是数字类型,我希望它将awesomeType设置为true,否则为false.我可以使用显式实例化吗?我希望将numericType设置为tr
我想要做的简化示例:

如果我有课:

template <typename T>
class Foo
{
public:
    Foo() : numericType(false){};

private:
    bool numericType;
}

如果T是数字类型,我希望它将awesomeType设置为true,否则为false.我可以使用显式实例化吗?我希望将numericType设置为true的每个类型都显式实例化并将其设置为true,而所有其他类型都未显式实例化,因此保持为false?

如果没有,你会怎么做?

旁注:感谢我的intel编译器,我无法使用C 11.

解决方法

既然你不能使用C 11,那么你可以按照其他人的建议,但使用Boost而不是STL:

http://www.boost.org/doc/libs/1_55_0/libs/type_traits/doc/html/index.html

虽然这里没有任何魔法.只是模板专业化.即使它很麻烦,您也可以自己实现它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读