c++之普通函数和模板函数的区别
时间:2022-07-23
本文章向大家介绍c++之普通函数和模板函数的区别,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1.普通函数调用时可以发生自动类型转换(隐式类型转换);
2.函数模板调用时,如果利用类型自动推导,不会发生隐式类型转换;
3.如果利用显示指定类的方式,可以发生隐式类型转换;
#include<iostream>
using namespace std;
int myAdd(int a, int b) {
return a + b;
}
template<class T>
T myAdd2(T a, T b) {
return a + b;
}
void test() {
int a = 10;
int b = 20;
char c = 'c';
//这里进行了隐式的转换,将char转换成了int
cout << myAdd(a, c) << endl;
//这里使用c作为实参就会报错
//cout << myAdd2(a, c) << endl;
//这种情况下就不会报错,会进行隐式转换
cout << myAdd2<int>(a, c) << endl;
}
int main() {
test();
system("pause");
return 0;
}
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Java垃圾回收之jconsole分析
- Spring Boot 系列:日志动态配置详解
- Js电子时钟
- 函数的定义和调用
- this指向
- 严格模式
- 闭包与高阶函数
- IDEA设置maven修改settings.xml配置文件无法加载仓库
- 在Linux下如何根据域名自签发OpenSSL证书与常用证书转换 修改openssl.cnf配置文件创建根证书自签发泛域名证书将crt转pem格式生成 p12 格式的
- CAS 原子操作
- FlutterDojo设计之道—状态管理之路(七)
- Kubernetes K8S之存储ConfigMap详解 通过目录创建通过文件创建通过命令行创建通过yaml文件创建当前存在的ConfigMap使用ConfigMap
- Material Components——Shape的处理
- pandas系列 - (一)明细数据汇总简单场景应用
- Spring系列 SpringMVC的请求与数据响应