c++一些语法模板
函数模板特
template <class T>
int compare(T v1,T v2)
{
if(v1<v2)
return -1;
else if(v1>v2)
return 1;
else
return 0;
} template <>
int compare<char *>(char * s1,char * s2)
{
return strcmp(s1,s2);
}
类模板的特化
template <class T>
class test
{
public:
void operator()()
{
cout<<"test<T>"<<endl;
}
}; template <> class test<char>
{
public:
void operator()()
{
cout<<"test<char>"<<endl;
}
};
模板的偏特化
template <class T,class O>
struct testClass
{
testClass(){cout<<"I,O"<<endl;}
}; template <class T>
struct testClass<T *,T *>
{
testClass(){cout<<"T*,T*"<<endl;}
};
成员模板
template <class T>
class v
{
public:
template <class T1>
void insert(int position ,T1 t)
{
cout<<"insertion"<<endl;
}
};
依据前面一个模板确定当前的模板參数
template <class T,class S=vector<T> >
class test
{
public:
test(){cout<<"test"<<endl;}
private:
S t;
}
模板与友元的绑定
template <class T>
class Queue
{
friend bool operator == <T> (const Queue <T> &t1,const Queue <T> &t2)
{
cout<<"T,T"<<endl;
return true;
}
};
内联函数模板
inline template <typename T> T min(const T& a,const T & b)
{
return a<b?a:b;
}
注意inline 和template的位置不能互换
模板内部指定类型
template <class T>
class test
{
public:
typename T::size_type t; //模板内部定义类型
};
非类型模板形參
template <class T,size_t N>
void arr(T (¶)[N])
{
int i=0;
for(i=0;i<N;i++)
cout<<para[i]<<endl;
};
版权声明:本文博客原创文章,博客,未经同意,不得转载。
c++一些语法模板的更多相关文章
- php特殊语法--模板引擎中比较常见
<?php $a=array(1,2,0); foreach ($a as $v): if($v>1): ?> 5 <?php endif; endforeach; ?> ...
- markdown语法模板
(GitHub-Flavored) Markdown Editor Basic useful feature list: Ctrl+S / Cmd+S to save the file Ctrl+Sh ...
- 基于typescript编写vue的ts文件语法模板
1 <template> 2 <div> 3 <input v-model="msg"> 4 <p>prop: {{ propMes ...
- 快速生成组件语法模板的插件:Auto Close Tag
好家伙, 这是一个"标签闭合"插件 Auto Close Tag的安装: 来到VScode的拓展 安装后, 在其中输入一个左标签符号"<",随后会出现提示 ...
- django模板语法
Django 模板语法 Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }}在Django模板中遍历复杂 ...
- Django 2.0 学习(12):Django 模板语法
Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }} 在Django模板中遍历复杂数据结构的关键是句点字 ...
- [转帖]helm模板文件chart编写语法详解
helm模板文件chart编写语法详解 https://blog.51cto.com/qujunorz/2421328 需要学习一下. charts编写介绍 开始 快速创建一个chart模板,helm ...
- ES5与ES6常用语法教程之 ③模板字符串、判断字符串是否包含其它字符串
这部分教程我们主要讲解以下几个常用语法 模板字符串 带标签的模板字符串 判断字符串中是否包含其他字符串 给函数设置默认值 模板字符串 老式的拼接字符串方法 let dessert = '
- 【转】Django 模板语法
转自:https://www.cnblogs.com/love9527/p/9077863.html Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就 ...
随机推荐
- VM中装Linux换ISO文件报错"该光盘无法被挂载"
一.发现问题 利用VM安装Red Hat Linux的时候,第一个iso安装完毕,准备换第二个iso,报错“该光盘无法被挂载”. 二.解决办法 上面的菜单栏中“虚拟机”—>“设置”—>“硬 ...
- EasyUI - DataGrid 组建 - [ 新增功能 ]
效果: html代码: <div> <!--使用JS加载方式--> <table id="tab"></table> <!-- ...
- ios开发者创建app应用开发授权文件 实战方法:
收到apple邮件成为合法的开发者后,进入https://developer.apple.com/account/ios/profile/profileList.action页面 总的有4步操作: 1 ...
- MS Server中varchar与nvarchar的区别
很多时候我们在创建数据库时在给字段设置数据类型时会选择varchar或是nvarchar.当然还可以选择别的数据类型,本文只对varchar和nvarchar两种类型做说明.如下测试表Test的表结构 ...
- jvm常用参数设置 good
1.堆的大小可以通过 -Xms 和 -Xmx 来设置,一般将他们设置为相同的大小,目的是避免在每次垃圾回收后重新调整堆的大小,比如 -Xms=2g -Xmx=2g 或者 -Xms=512m -Xmx= ...
- IOS 轻量级数据持久化 DataLite
开发的过程中我们经常要保存一些配置信息,一般简单的是用 NSUserDefaults [[NSUserDefaults standardUserDefaults] objectForKey:key]; ...
- android图片压缩的3种方法实例
android 图片压缩方法: 第一:质量压缩法: private Bitmap compressImage(Bitmap image) { ByteArrayOutputStream baos = ...
- 自定义ALV控件的工具条按钮
*&---------------------------------------------------------------------* *& Report YTEST028 ...
- 动态修改PE文件图标(使用UpdateResource API函数)
PE文件的图标存储在资源文件中,而操作资源要用到的API函数就是UpdateResource首先我们需要先了解一下ICO格式,参考资料:http://www.moon-soft.com/program ...
- uploadify,实际开发案例【选择完文件点击上传才上传】
<script type="text/javascript"> )+Math.floor(Math.random()*)+']-'; //设置随机文件前缀. $k(fu ...