C++练习 | 模板与泛式编程练习
#include <iostream>
#include <cmath>
#include <cstring>
#include <string>
#include <iomanip>
using namespace std; template<typename A>
void Swap(A &t1,A &t2)
{
A t;
t=t1;
t1=t2;
t2=t;
} int main()
{
int a1, a2;
double b1, b2;
char c1 , c2 ;
cin>>a1>>a2;
cin>>b1>>b2;
cin>>c1>>c2;
Swap(a1,a2);
cout<<a1<<","<<a2<<endl;
Swap(b1,b2);
cout<<b1<<","<<b2<<endl;
Swap(c1,c2);
cout<<c1<<","<<c2<<endl;
return ;
}
交换函数,仅作格式记录。
#include <iostream>
#include <cmath>
#include <cstring>
#include <string>
#include <iomanip>
using namespace std; template<typename A,size_t N>
void input(A (&a)[N])//N即为数组长度
{
for(size_t i=;i!=N;i++)
{
cin>>a[i];
}
} template<typename A,size_t N>
void sort(A (&a)[N])
{
sort(a,a+N);
} template<typename A,size_t N>
void output(A (&a)[N])
{
for(int i=;i<N;i++)
{
cout<<a[i];
if(i!=N-)
cout<<" ";
else
cout<<endl;
}
} int main()
{
int a1[];
char a2[];
double a3[];
int type;
while (cin >> type)
{
switch (type)
{
case : input(a1); sort(a1); output(a1); break;
case : input(a2); sort(a2); output(a2); break;
case : input(a3); sort(a3); output(a3); break;
}
}
return ;
}
输入、排序和输出。
C++练习 | 模板与泛式编程练习的更多相关文章
- C++练习 | 模板与泛式编程练习(2)
#include <iostream> #include <cmath> #include <cstring> #include <string> #i ...
- jQuery插件编写及链式编程模型
jQuery插件编写及链式编程模型小结 JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我 ...
- 【响应式编程的思维艺术】 (5)Angular中Rxjs的应用示例
目录 一. 划重点 二. Angular应用中的Http请求 三. 使用Rxjs构建Http请求结果的处理管道 3.1 基本示例 3.2 常见的操作符 四. 冷热Observable的两种典型场景 4 ...
- 【SpringBoot】SpringBoot2.0响应式编程
========================15.高级篇幅之SpringBoot2.0响应式编程 ================================ 1.SprinBoot2.x响应 ...
- Angular4学习笔记(五)- 数据绑定、响应式编程和管道
概念 Angular中的数据绑定指的是同一组件中控制器文件(.ts)与视图文件(.html)之间的数据传递. 分类 流向 单向绑定 它的意思是要么是ts文件为html文件赋值,要么相反. ts-> ...
- AngularJS体验式编程系列文章
AngularJS体验式编程系列文章,将介绍如何用angularjs构建一个强大的web前端系统.angularjs是由Google团队开发的一款非常优秀web前端框架.在当前如此多的web框架下,a ...
- Angular6 基础(数据绑定、生命周期、父子组件通讯、响应式编程)
Angular相比于vue来说,更像一个完整的框架,本身就集成了很多模块,如路由,HTTP,服务等,而vue是需要另外引入比如(vuex,axios等).Angular引入了依赖注入.单元测试.类等后 ...
- Angular : 响应式编程, 组件间通信, 表单
Angular 响应式编程相关 ------------------------------------------------------------------------------------ ...
- CRUD全栈式编程架构之导入导出的设计
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
随机推荐
- 解决API中无法使用session问题
处理API无法使用session的方法,贴图: 1调用如下图 2.需要在Global.asax文件中配置一些东西 protected void Application_PostAuthorizeReq ...
- VS2008和VC6.0下使用pthread.h头文件
原文:http://www.cppblog.com/liquidx/archive/2009/06/16/87811.html 要在windows环境下使用 #include <pthread. ...
- JMeter测试WEB性能入门
一.JMeter介绍 1.Apache JMeter是什么 Apache JMeter 是Apache组织的开放源代码项目,是一个100%纯Java桌面应用,用于压力测试和性能测量.它最初被设计用于W ...
- MyBatis基本配置和实践(四)
一.Mybatis整合spring 1.整合思路 SqlSessionFactory对象应该放到spring容器中作为单例存在. 传统dao的开发方式中,应该从spring容器中获得sqlsessio ...
- 毕向东_Java基础视频教程第20天_IO流(7~10)
第20天-07-IO流(递归) package bxd; import java.io.File; public class FileDemo3 { // 非递归打印 public static vo ...
- centos yum升级php
centos yum升级php5.3.3到最5.6.3 不要轻易升级,否则后果很严重! 注意事项: 1 升级后之前的php扩展不会丢失 自动会安装对应最新php的扩展2 升级后需重启下apache 才 ...
- Linux基础和常用命令
经常使用的命令: #查看端口被占用情况 netstat -tunlp|grep #查看java进程 ps -ef|grep java #压缩前端工程 rar a -ep1 ./update/win32 ...
- 【Oozie】ambari安装oozie失败
之前对azkaban的研究比较多,现在开个新坑,对Oozie开始深入了解 Traceback (most recent call last): File "/var/lib/ambari-a ...
- 如何用iOS工程生成iOS模拟器包
1. 在终端上运行下面的命令来查找你的机器上可用的SDK的版本 xcodebuild -showsdks 2. 创建模拟器包: xcodebuild -workspace ** -scheme ** ...
- Linux命令--目录处理
ls命令 Linux ls命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录). 语法 ls [-alrtAFR] [name...] 参数 : -a 显示所有文件及目录 (ls内定 ...