为了账号安全,请及时绑定邮箱和手机立即绑定

函数模板的默认模板参数

函数模板的默认模板参数

C++
Smart猫小萌 2019-11-25 14:24:27
为什么仅在类模板上允许使用默认模板参数?为什么我们不能在成员函数模板中定义默认类型?例如:struct mycclass {  template<class T=int>  void mymember(T* vec) {    // ...  }};相反,C ++强制仅在类模板上允许使用默认模板参数。
查看完整描述

3 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

引用C ++模板:完整指南(第207页):


最初将模板添加到C ++语言时,显式函数模板参数不是有效的构造。始终必须从调用表达式中推导函数模板参数。结果,似乎没有令人信服的理由允许默认函数模板参数,因为默认值总是会被推导的值覆盖。


查看完整回答
反对 回复 2019-11-25
  • 3 回答
  • 0 关注
  • 678 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信