IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++ template 模版 函数 模版类 -> 正文阅读

[C++知识库]C++ template 模版 函数 模版类

平时用C C#? Java类的语言用的多些? ?, 现在弄弄C++的

一些高级语言都有泛型? 比如C#? List<类型>? 这样的用法非常方便好用

类似的C++里面有模版? 不过语法看起来就没那么美丽了

主要是实现:

1.方法的模版

? ? 不同类型,功能相同的使用

2.类的模版? ??

? ? 不同类型,类功能类似的使用

注意点:

? ?a? ? template <typename T , typename T1> 先定义下模版有那几个参数

? ?b? ? 对于类,如何为定义在外面的函数书写模版

? ?c? ? 就是使用了,与其它高级语言类似

#include <iostream>

//定义模版   其实就是类型不清楚 用的时候指明下, 编译器编译的时候会根据指明的类型  生成不同的实际函数调用
template <typename T , typename T1>
T add( T a, T1 b)
{
	return  a + b;
}
//--------------------------------------------------------


template <typename T>
class MyClass
{
	T i;
public:
	MyClass():i(1.1){};
	T GetI() { return i; };
private:

};

//......................................................
//函数写到外面  
template <typename T>
class MyClass2
{
	T m;
public:
	MyClass2(T value);
	T Getm();
private:
};

template <typename T>
MyClass2<T>::MyClass2(T value)
{
	m = value;
}

template <typename T>
T MyClass2<T>::Getm()
{
	return m;
}


int main()
{
	MyClass<float> *pcls = new MyClass<float>();
	MyClass2<double> *pcls2 = new MyClass2<double>(3.5);
	std::cout<<pcls->GetI()<<"\n";
	std::cout << pcls2->Getm() << "\n";
				 //指明类型
	std::cout << add<float,float>(1.0,2.1)<< "Hello World!\n";
}

运行结果:

1.1
3.5
3.1Hello World!

老铁们可以把试用过程中的类型修改成int 之类的 ,看输出结果对比就知道怎么用了
?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-04 13:12:48  更:2021-12-04 13:15:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:28:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码