函数模板特

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 (&para)[N])
{
int i=0;
for(i=0;i<N;i++)
cout<<para[i]<<endl;
};

版权声明:本文博客原创文章,博客,未经同意,不得转载。

c++一些语法模板的更多相关文章

  1. php特殊语法--模板引擎中比较常见

    <?php $a=array(1,2,0); foreach ($a as $v): if($v>1): ?> 5 <?php endif; endforeach; ?> ...

  2. markdown语法模板

    (GitHub-Flavored) Markdown Editor Basic useful feature list: Ctrl+S / Cmd+S to save the file Ctrl+Sh ...

  3. 基于typescript编写vue的ts文件语法模板

    1 <template> 2 <div> 3 <input v-model="msg"> 4 <p>prop: {{ propMes ...

  4. 快速生成组件语法模板的插件:Auto Close Tag

    好家伙, 这是一个"标签闭合"插件 Auto Close Tag的安装: 来到VScode的拓展 安装后, 在其中输入一个左标签符号"<",随后会出现提示 ...

  5. django模板语法

    Django 模板语法 Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }}在Django模板中遍历复杂 ...

  6. Django 2.0 学习(12):Django 模板语法

    Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }} 在Django模板中遍历复杂数据结构的关键是句点字 ...

  7. [转帖]helm模板文件chart编写语法详解

    helm模板文件chart编写语法详解 https://blog.51cto.com/qujunorz/2421328 需要学习一下. charts编写介绍 开始 快速创建一个chart模板,helm ...

  8. ES5与ES6常用语法教程之 ③模板字符串、判断字符串是否包含其它字符串

    这部分教程我们主要讲解以下几个常用语法 模板字符串 带标签的模板字符串 判断字符串中是否包含其他字符串 给函数设置默认值 模板字符串 老式的拼接字符串方法 let dessert = '

  9. 【转】Django 模板语法

    转自:https://www.cnblogs.com/love9527/p/9077863.html Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就 ...

随机推荐

  1. java基本数据类型转换成byte[]数组

    import java.io.UnsupportedEncodingException;  public class ConToByte {      /**     * double转换byte   ...

  2. EasyUI - Slider组件

    效果: html代码: <input id="box" /> JS代码: $(function () { $('#box').slider({ width: ,//设置 ...

  3. RStudio版本号管理 整合Git

    本文为原创,转载注明出处. 系统环境: win7 x64 R-3.1.0-win.exe RStudio-0.98.507.exe 前置条件:必须拥有github仓库: 如:https://githu ...

  4. 简单的javascript抽奖程序

    <html>  <head>   <title>手机号码抽奖程序</title>   <script>    //声明一个数组装住号码,可根 ...

  5. Linux账号管理(二)

    再次声明,整理此系列Linux博客,主要目的不是介绍各种命令,而是去探索命令背后的理论. 本篇主要介绍用户的创建与删除. 创建用户主要用到useradd命令,在用此命令时可以指定各种参数.一般默认就可 ...

  6. 好多NFS的文章

    http://www.cnblogs.com/lidabo/category/587288.html http://www.cnblogs.com/lidabo/p/4380555.html

  7. boost.asio系列——buffer

    创建buffer 在io操作中,对数据的读写大都是在一个缓冲区上进行的,在asio框架中,可以通过asio::buffer函数创建一个缓冲区来提供数据的读写.buffer函数本身并不申请内存,只是提供 ...

  8. linux pthread之学习篇

    在应用程序编程中,为了不影响与用户交互的性能,通常需要创建新的线程来处理一些比较耗时的. 不影响用户体验的工作.而这又通常分为两种情况: (1)需要临时创建一个线程来做某件特定的事,等事情做完时线程即 ...

  9. 百度地图new BMap.LocalCity() 问题

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  10. OpenRisc-30-SD card controller模块分析与验证

    引言 ORPSoC的硬件平台是包含SD card controller控制器的,但是对应的linux里面却没有对应的linux的驱动程序,这使ORPSoC的SD card的使用收到了很大的限制.没有驱 ...