CPP-基础:模板
// template.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include <iostream> #include <string>
#include <vector>
#include <algorithm> #include <ctime> // std::time
#include <cstdlib> // std::rand, std::srand
using namespace std; //类模板/////////////////////////////////////////////////
template<class T1,class T2>
class myClass{
private:
T1 I;
T2 J;
public:
myClass(T1 a, T2 b);//Constructor
void show();
T1 Sums();
};
//这是构造函数 ,注意这些格式
template <typename T1,typename T2>
myClass<T1,T2>::myClass(T1 a,T2 b):I(a),J(b)
{}
//这是void show();
template <typename T1,typename T2>
void myClass<T1,T2>::show()
{
cout<<"I="<<I<<", J="<<J<<endl;
}
//这是Sums函数
template <typename T1,typename T2>
T1 myClass<T1,T2>::Sums()
{
return I;
}
//////////////////////////////////////////////////////// template<class A,class B>
class CTemplate
{
private:
A aa;
B bb;
public:
CTemplate(A a, B b);
void setdata(A n1,B n2);
A getdataA();
B getdataB();
};
template<typename A,typename B>
CTemplate<A,B>::CTemplate(A a, B b):aa(a),bb(b)
{}
template<typename A,typename B>
void CTemplate<A,B>::setdata(A n1,B n2)
{
aa = n1;
bb = n2;
}
template<typename A,typename B>
A CTemplate<A,B>::getdataA()
{
cout<<"aa:"<<aa<<" "<<endl;
return aa;
};
template<typename A,typename B>
B CTemplate<A,B>::getdataB()
{
cout<<"bb:"<<bb<<" "<<endl;
return bb;
};
//函数模板//////////////////////////////////////////////
template <typename T1, typename T2>
void FunctionTemplate(T1 a, T2 b)
{
cout<<"a:"<<a<<" "<<"b:"<<b<<endl;
}
////////////////////////////////////////////////////////
}int _tmain(int argc, _TCHAR* argv[])
{
myClass<int,int> class1(,);
class1.show();
myClass<int,char> class2(,'a');
class2.show();
myClass<double,int> class3(2.9,);
class3.show();
myClass<float,float> class4(3.1,2.5);
float ff=class4.Sums();
cout<<"ff:"<<ff<<endl;
///////////////////////////////////////////////////
CTemplate<int, int> o_Tmeplate1(,);
//o_Tmeplate1.setdata(3,4);
o_Tmeplate1.getdataA();
o_Tmeplate1.getdataB();
CTemplate<float,float> o_Tmeplate2(2.003,3.001);
o_Tmeplate2.getdataA();
o_Tmeplate2.getdataB();
///////////////////////////////////////////////////
int a = ;
int b = ;
FunctionTemplate(a,b);
double d =3.3 ;
double c = 5.5;
FunctionTemplate(d,c);
///////////////////////////////////////////////////
system("PAUSE");
return ;
}
CPP-基础:模板的更多相关文章
- new 经典基础模板总结
NOIP-NOI-ZJOI基础模板总结 目录 C++语言和STL库操作 重载运算符操作 /* 重载运算符 格式 如重载小于号 这里是以x递减为第一关键字比较,y递减为第二关键字比较 */ bool o ...
- CPP基础
CPP基础1. 如果没有指明访问限定符(public,private),class中默认的private,而struct中的成员默认是public的. #include <iostream> ...
- Bootstrap 4/3 页面基础模板 与 兼容旧版本浏览器
Bootstrap 3 与 4 差别很大,目录文件结构.所引入的内容也不同,这里说说一下 Bootstrap 引入的文件.网页模板和兼容性问题.本网站刚刚搭建好,正好发一下文章原来测试网站. Boot ...
- Hadoop程序基础模板
分布式编程相对复杂,而Hadoop本身蒙上大数据.云计算等各种面纱,让很多初学者望而却步.可事实上,Hadoop是一个很易用的分布式编程框架,经过良好封装屏蔽了很多分布式环境下的复杂问题,因此,对普通 ...
- 【转】手摸手,带你用vue撸后台 系列四(vueAdmin 一个极简的后台基础模板)
前言 做这个 vueAdmin-template 的主要原因是: vue-element-admin 这个项目的初衷是一个vue的管理后台集成方案,把平时用到的一些组件或者经验分享给大家,同时它也在不 ...
- 树状数组(二叉索引树 BIT Fenwick树) *【一维基础模板】(查询区间和+修改更新)
刘汝佳:<训练指南>Page(194) #include <stdio.h> #include <string.h> #include <stdlib.h&g ...
- jsp基础模板
jsp页面基础模板 base.jsp <%@ page language="java" contentType="text/html; charset=UTF-8& ...
- vue-cli3 搭建的前端项目基础模板
基于 vue-cli3 搭建的前端模板,fork 或 clone 本仓库,即可搭建完成一个新项目的基础模板,源码地址,欢迎 star 或 fork 特性 CSS 预编译语言:less Ajax: ax ...
- NOIP经典基础模板总结
date: 20180820 spj: 距离NOIP还有81天 目录 STL模板: priority_queue 的用法:重载<,struct cmpqueue 的用法 stack 的用法vec ...
- Django学习之 - 基础模板语言
模板语言if/else/endif {% if today_is_weekend %} <p>Welcome to the weekend!</p> {% else %} &l ...
随机推荐
- Windows下如何生成数字证书
1.Makecert.exe<证书创建工具>使用说明:http://msdn.microsoft.com/zh-cn/library/bfsktky3.aspx 2.SignTool.ex ...
- 库&框架-----CDN网络引用总结
百度jquery引用地址 http://apps.bdimg.com/libs/jquery/1.6.4/jquery.js http://apps.bdimg.com/libs/jquery/1.6 ...
- Jquery之each函数详解
最近项目被each函数坑惨了,想来还是好好整理下关于each函数的方方面面,一来方便自己查阅,二来为读者提供经验和教训,废话不多说,来看看Each函数到底是怎么坑人的. 一. 全局jQuery.eac ...
- Playground Tutorial
In this step by step tutorial we'll walk through setting up a business network, defining our assets, ...
- ASP.NET Core Web API + Angular 仿B站(二)后台模型创建以及数据库的初始化
前言: 本系列文章主要为对所学 Angular 框架的一次微小的实践,对 b站页面作简单的模仿. 本系列文章主要参考资料: 微软文档: https://docs.microsoft.com/zh-cn ...
- HDU1016【简单递归.DFS】
题意:一个环,相邻相加是素数. 思路: 直接深搜就好了.. output limit exceed 了好几发... 因为那个while里面的scanf前面的"~" 后来搜了outp ...
- 通过split命令分割大文件
场景 线上出了问题,我需要去查找log来定位问题,但是由于线上数据量庞大,这些log文件每过一个小时就会自动回滚一次,尽管如此,有的log文件依然达到了五六g以上的大小. 对于这种巨大的log文件,常 ...
- April Fools Contest 2017 E
Description Input The input consists of four lines, each line containing a single digit 0 or 1. Outp ...
- Java学习笔记之log4j与commons-logging<转>
Java学习笔记之log4j与commons-logging<转> (2011-02-16 11:10:46) 转载▼ 标签: 杂谈 分类: 技术学习之其他 Logger来自log4j自己 ...
- linux高负载下mysql数据库彻底优化
同时在线访问量继续增大 对于1G内存的服务器明显感觉到吃力严重时甚至每天都会死机 或者时不时的服务器卡一下 这个问题曾经困扰了我半个多月MySQL使用是很具伸缩性的算法,因此你通常能用很少的内存运行或 ...