C++ 使用模板需要注意的事情

总结:
●使用模板时必须确定出通用数据类型T,并且能够推争出一致的类型 

#include<iostream>
using namespace std;
#include<string>
#include<fstream>//函数模板注意事项
template<class T> //typename 可以替换成class
void mySwap(T&a, T&b){T temp = a;a = b;b = temp;}
//1、自动类型推导,必须推导出- -致的数据类型T才可以使用
void test01() {int a = 10;int b = 20;char c = 'c';mySwap(a,b); //正确!//mySwap(a, c); //错误!mySwap(a,b); //正确!cout << "a=" << a <<endl;cout << "b=" << b <<endl;
}//2、模板必须要确定出T的数据类型,才可以使用
template<class T> 
void func() {cout << "func调用" << endl;
}void test02(){func<int>(); 
}int main() {test01();system("pause");return 0;}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576206.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三分法解决凸(凹)函数极值问题

二分法只适用与线性函数&#xff0c;当函数脱离线性而呈现凸性或者凹性的时候&#xff0c;三分是很有必要的。 三分过程如下图&#xff1a; 凸函数&#xff1a; 凹函数&#xff1a; 实现方法&#xff1a; double Calc(double p) {/*...*/ }double Solve(double MIN, double MAX…

C++ 普通函数和模板函数调用规则

/** 调用规则如下: 1.如果函数模板和普通函数都可以实现&#xff0c;优先调用普通函数 2.可以通过空模板参数列表来强制调用函数模板 3.函数模板也可以发生重载 4.如果函数模板可以产生更好的匹配, 优先调用函数模板 */ 总结:既然提供了函数模板&#xff0c;最好就不要提供普…

计算机网络原理(第一章)课后题答案

第一章 1.什么是计算机网络&#xff1f; 计算机网络是互联、自治的计算机集合 自治&#xff1a;计算机系统彼此独立&#xff0c;不存在主从或控制与被控制的关系 互联&#xff1a;利用通信线路链接&#xff0c;连接相互独立的计算机系统 2.网络协议的三要素是什么&#xf…

VCS使用指令

vcs -debug v2k -f file.tcl -R -ucli -V -do do.tcl -notice -P /home/tian/programs/verdi/share/PLI/VCS/LINUX/novas.tab /home/tian/programs/verdi/share/PLI/VCS/LINUX/pli.a转载于:https://www.cnblogs.com/tshell/archive/2012/10/31/2747463.html

计算机网络原理(第二章)课后题答案

第二章 1.计算机网络应用可以分为哪几种体系结构的应用类型&#xff1f;各种应用类型的特点是什么&#xff1f; C/S结构&#xff1a;通信旨在客户与服务器之间进行&#xff0c;客户与客户不直接通信 纯P2P结构&#xff1a;没有永远在线的服务器&#xff0c;任意端系统/结点之…

计算机网络原理(第三章) 传输层 课后习题

1、实现可靠数据传输的主要措施有哪些?这些措施主要用于解决哪些问题&#xff1f;P98差错检测&#xff1a;利用差错编码实现数据包传输过程中的比特差错检测 确认&#xff1a;确认方向发送方反馈接收状态 重传&#xff1a;发送方重新发送接收方没有正确接收的数据 序号&#x…

电子商务的安全机制及商务模式

电子商务最常见之安全机制有SSL及SET两种。【分类】B2B、B2C、 C2C、B2M四类电子商务模式。 B2B 指的是Business to Business. as in businesses doing business with other businesses,商家(泛指企业)对商家的电子商务&#xff0c;即企业与企业之间通过互联网进行产品、服务及…

Date和Calendar

此文章来源于廖雪峰博客&#xff1a;Date和Calendar - 廖雪峰的官方网站 在计算机中&#xff0c;应该如何表示日期和时间呢&#xff1f; 我们经常看到的日期和时间表示方式如下&#xff1a; 2019-11-20 0:15:01 GMT00:002019年11月20日8:15:0111/19/2019 19:15:01 America/N…

grandle下载安装图解

1、登录官网&#xff1a;www.gradle.org,进入到下图的界面&#xff1a; 我这里选择了最新版本下载 配置环境变量&#xff0c;这个gradle环境变量是依赖jvm的&#xff0c;需要优先配置jdk&#xff0c;我这里就配置好了 这个GRADLE_USER_HOME相当于maven的本地仓库 配置完成&…

android ListView控件滑动时出现黑色背景问题解法方案

设置ListView属性android:cacheColorHint"#00000000" <ListViewandroid:id"id/orderDetailListView01"android:layout_width"wrap_content"android:layout_height"wrap_content" android:cacheColorHint"#00000000" /&…

面向对象设计7大原则

概述 熟练掌握和应用面向对象设计&#xff08;Object Oriented Design&#xff0c;OOD&#xff09;7大原则&#xff0c;是初/中级Java工程师向高级/资深工程师进阶的一个必备技能&#xff0c;它可以大大提升程序的可复用性和可维护性&#xff0c;也是重构代码的一大利器。7大设…

discuz x2.5 DIY模块模板语法详解

基本语句 [loop]...[/loop]标签来循环显示模块中的数据&#xff1b;如果要在模板中多处循环可以使用[loop1]...[/loop1]的方式扩展&#xff08;只能扩展1-9个&#xff09; [orderN]...[/order]标签来替代默认loop中的第N个位置数据的展示&#xff0c;你可以使用[order1N]...[/o…

get请求可以传body吗_GET 和 POST 的区别?

同样还是面试被问到的问题&#xff0c;经过这两天的复盘&#xff0c;发现之前对其的了解只是冰山一角&#xff0c;这两天也学到了不少新的知识&#xff0c;不得不说面试的确能帮我们弥补一些不足。本文将从基本概念、两者之间的区别以及几个常见问题来进行介绍&#xff0c;首先…

WINCE 下配置 QT 的方法

1. 推荐安装环境 Windows XP SP3 VS2005(SP1)2. 载Qt for WinCE(eg. qt-everywhere-opensource-src-4.8.3.zip)3. 解压到C:\Qt\4.8.3WinCE4. 安装WinCE的SDK(如RNx&#xff0c;WinCE5.0的)5. 将C:\Qt\4.8.3WinCE\bin加到环境变量Path中6. 修改代码或配置(注1)&#xff0c;否则…

AQS基本原理

什么是AQS&#xff1f; AQS即AbstractQueuedSynchronizer,是一个用于构建锁和同步器的框架。它能降低构建锁和同步器的工作量&#xff0c;还可以避免处理多个位置上发生的竞争问题。在基于AQS构建的同步器中&#xff0c;只可能在一个时刻发生阻塞&#xff0c;从而降低上下文切…

C语言 int** 二重指针的理解

#include <stdio.h> #include <stdlib.h>/*&根据值找地址*根据地址找值 */ f(int** q){//传入的是指针的地址 int i 3; printf("子函数 i的地址 %#X\n",&i); // *q 代表的就是p变量 *q &i; //*q指向是p的值 也就是…

ReentrantReadWriteLock源码分析

概述 ReentrantReadWriteLock维护了一对相关的锁&#xff0c;它们分别是共享readLock和独占writeLock。关于共享读锁和排他写锁的概念其实很好理解。所谓共享读锁就是一个线程读的时候&#xff0c;其它线程也可以来读&#xff08;共享&#xff09;&#xff0c;但是不能来写。排…

@Autowired、@Qualifier、@Resource的区别

参考博文&#xff1a; http://www.cnblogs.com/happyyang/articles/3553687.html http://blog.csdn.net/revent/article/details/49203619 http://blog.csdn.net/ad921012/article/details/49679745 spring不但支持自己定义的Autowired注解&#xff0c;还支持几个由JSR-250…

UINavigationViewController的backBarButtonItem设置技巧

之前大家是否疑惑为什么设置了类似这样的代码 UIBarButtonItem *backButton [[UIBarButtonItem alloc] initWithTitle:"返回" …

MySQL行锁和表锁的含义及区别

今天在开发测试时候出现了锁表&#xff0c;原因是因为我在本地开启了事务&#xff0c;代码中打了断点&#xff0c;然后测试同学测试时候出现了锁表&#xff0c;我去排查了问题&#xff0c;然后找到相关的资料了解下&#xff0c; 总结&#xff1a;原因的表没有加索引&#xff0…