博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
普通类中能不能有函数模板?/有函数模板的类可以是普通类吗
阅读量:4656 次
发布时间:2019-06-09

本文共 823 字,大约阅读时间需要 2 分钟。

有函数模板的,一定是类模板。

 

通过给函数模板传值就可以确定类型,为什么还要通过类确定呢。然后就试了试:

#include
using std::cout;using std::endl;template
class lei{ int a; void output(const T &b);};template
void lei::output(const T &b){ cout << b << endl;}int main(){ lei A; A.output(1.2); return 0;}

 

上面代码想把含有函数模板的类定义成普通类,通过传值(1.2)确定类型,但是函数定义的第一行会报错。

下面是对的:

#include
using std::cout;using std::endl;template
class lei{public: int a; void output(const T &b);};template
void lei
::output(const T &b){ cout << b << endl;}int main(){ lei
A; A.output(1.2); return 0;}

 

先实例化类模板,lei<int>A;执行后类中的T被int代替,因为成员函数的形参是int,所以函数实参必须是int。

 

转载于:https://www.cnblogs.com/mu-ye/p/7622806.html

你可能感兴趣的文章
[javascript]9宫格拖拽拼图游戏 puzzle
查看>>
Entity Framework底层操作封装(3)
查看>>
InputStream 转换 InputStreamReader再转换BufferedReader
查看>>
在线程池中的使用spring aop事务增强
查看>>
javascript相关知识
查看>>
数组对象去重
查看>>
你未必知道的12个JavaScript技巧
查看>>
mysql的基本操作命令
查看>>
微信小程序---数据缓存
查看>>
Python网页正文转换语音文件的操作方法
查看>>
常用SQL查询语句
查看>>
Redis Windows版安装详解
查看>>
linux后台运行python程序 nohup
查看>>
吴裕雄--天生自然 高等数学学习:对面积的曲面积分
查看>>
css
查看>>
消除头文件
查看>>
Android中数据文件解析(Json解析)
查看>>
自定义seekBar设置进度条背景图片
查看>>
java容器类1:Collection,List,ArrayList,LinkedList深入解读
查看>>
16日彻底去除安卓应用的内置广告
查看>>