欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 泛型编程--

泛型编程--

2025/3/18 1:42:33 来源:https://blog.csdn.net/xihuanniNI/article/details/144473531  浏览:    关键词:泛型编程--

auto自动推导数据类型

 

函数模板

定义和调用

函数模板具体化

函数模板通用版本之外的一个特殊版本

函数模板 具体化函数 ,它们的声明和定义都可以分开写。

声明

定义

函数模板写变量

模板参数缺省

类成员函数作为函数模板

类构造函数是函数模板

函数模板重载

函数模板分文件编写

 

高级应用

 

decltype的结果要么和表达式的类型相同,要么就是表达式的类型的引用。

函数模板注意事项

 

一个类的析构函数只有一个,没有参数,不需要模板。

类模板

基本概念

 类模板在创建对象的时候指定数据类型

定义和调用

继承类模板

类模板特化

嵌套

类模板的成员模板

下面的是AA的成员 

类外定义

 

类模板作为函数参数

可变模板

折叠参数类型 

_Ty ...  args             类型  _Ty , 参数包(变量名)args                                                                       

                                                                                                       

折叠参数展开方式

c++开发中广泛使用声明和实现分开的开发形式,其编译过程是分离式编译,就是说各个cpp文件完全分开编译,然后生成各自的obj目标文件,最后通过连接器link生成一个可执行的exe文件,调用普通函数时候编译期不需要实例化该函数,只需要将函数符号(或者说函数名加一些规则)记录下来,等待链接其他cpp编译出来的obj文件的时候去查找函数定义,找不到会报出未定义。而C++标准明确表示,当一个模板不被用到的时侯,它就不该被实例化出来,所以在编译的时候,函数并不会被实例化,就会导致链接错误。

我们调用一个函数模板时候,需要实例化,编译器必须看到模板确切的定义。

参考

C++泛编程(自动推导、函数模板、类模板)_哔哩哔哩_bilibili

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词