C++基础-模板
模板(不深挖哦,是最最浅的)
基本概念
模板就是建立通用的模具,大大提高复用性(类型参数化)
创新互联专注于中大型企业的成都网站建设、网站设计和网站改版、网站营销服务,追求商业策划与数据分析、创意艺术与技术开发的融合,累计客户1000+,服务满意度达97%。帮助广大客户顺利对接上互联网浪潮,准确优选出符合自己需要的互联网运用,我们将一直专注成都品牌网站建设和互联网程序开发,在前进的路上,与客户一起成长!
- 模板不能直接使用,它是一个框架
- 模板的通用不是万能的
函数模板
- C++另一种编程思想为泛型编程,主要是利用模板技术
语法
template
//声明模板
函数声明或定义
- template:声明创建模板
- typename:表示T是一种数据类型
- T:一个数据类型的名字
例子
#include
using namespace std;
void swapInt(int &a,int &b){ //普通的整型交换
int c;
c = a;
a = b;
b = c;
}
template //模板-整型交换
void mySwap(T &a,T &b){
T temp;
temp = a;
a = b;
b =temp;
}
void test01(){
int a = 10;
int b = 20;
//两种方法来使用函数模板
//1.自动类型推导
mySwap(a,b);
cout << a << b << endl;
cout << "=====================" << endl;
//2.显式指定类型
mySwap(a,b);
cout << a << b << endl;
}
int main(){
test01();
return 0;
}
类模板
建立一个通用类,类中的成员 数据类型可以不具体规定,用一个虚拟的类型来代表
语法
template
类
例子
#include
#include
using namespace std;
template
// 类型一 类型二
class Person{
friend void test01();
private:
NameType m_Name;
//类型一 类型一的对象
AgeType m_Age;
//类型二 类型二的对象
public:
Person(NameType name,AgeType age){
m_Name = name;
m_Age = age;
}
};
void test01(){
Personp("Tom",18); //指明类型一是string;类型二是int
cout << p.m_Name << '\t' << p.m_Age << endl;
}
int main(int argc, char** argv) {
test01();
return 0;
}
名称栏目:C++基础-模板
网站路径:http://ybzwz.com/article/dsoipjg.html