Template template parameter(模板參数) example

/*********************************************************************************
 Copyright (C), 1988-1999, drvivermonkey. Co., Ltd.
 File name:
 Author: Driver Monkey
 Version:
 Mail:[email protected]
 Date: 2014.04.02
 Description:
 *********************************************************************************/
#include<stdlib.h>
#include <iostream>
#include <typeinfo>
#include <typeindex>
#include <map>

using namespace std;

class A
{
	public:
    A(){cout<<"A created!"<<endl;}
};

template<class T>
class creat_t
{
	public:
    creat_t(){cout<<"A::"<<typeid(T).name()<<endl;}
};

template<template<class T>  class creat_t>
class sub_creat_t:public creat_t<float>
{
	public:
    sub_creat_t(){cout<<"sub_creat_t created!"<<endl;}
};

int main(int argc, char** argv) {
    sub_creat_t<creat_t> temp;

    return 0;
}
时间: 2025-01-05 19:33:55

Template template parameter(模板參数) example的相关文章

Effective C++ Item 44 将与參数无关的代码抽离 templates

本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie 经验:Templates 生成多个 classes 和多个函数,所以不论什么 template 代码都不该与某个造成膨胀的 template 參数产生相依关系 因非类型模板參数(non-type template parameters) 而造成的代码膨胀,往往可消除,做法是以函数參数或 class 成员变量替换 template 參数 演示样例: template<typename T,

Template template parameter(模板参数) example

/********************************************************************************* Copyright (C), 1988-1999, drvivermonkey. Co., Ltd. File name: Author: Driver Monkey Version: Mail:[email protected] Date: 2014.04.02 Description: *********************

Template function 函数模板用法

#include<iostream> using namespace std; const double PI = 3.1415926; template <class T> T min(T a[], int n){ int i; T minv = a[0]; for (i = 1; i < n; i++){ if (a[i] < minv) minv = a[i]; } return minv; } template<class T1> double Ci

Template Pattern(模板模式)

模板方法(Template Method)模式: 准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑.不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现.先制定一个顶级逻辑框架,而将逻辑的细节留给具体的子类去实现.模版方法模式是基于继承的代码复用的基本技术,模版方法模式的结构和用法也是面向对象设计的核心. 模版方法模式需要开发抽象类和具体子类的设计师之间的协作.一个设计师负责给出一个算法的轮廓和骨架,另一些设计师则负责

ES6, Angular,React和ABAP中的String Template(字符串模板)

String Template(字符串模板)在很多编程语言和框架中都支持,是一个很有用的特性.本文将Jerry工作中使用到的String Template的特性做一个总结. ES6 阮一峰老师有一个专门的网站介绍ES6入门,还出了一本书: <ECMAScript6标准入门>. http://es6.ruanyifeng.com/ 我们来看看ES6里的String Template. 首先看下面这段代码. <html> <div id="JerryTest"

CloudStack全局配置參数

參数 描写叙述 类型 默认值 account.cleanup.interval 清除用户账户所须要等待的时间(秒) 整数 86400 agent.lb.enabled If agent load balancing enabled in cluster setup true/false false agent.load.threshold  Percentage (as a value between 0 and 1) of connected agents after which agent

STL算法设计理念 - 函数对象和函数对象当參数和返回值

函数对象: 重载函数调用操作符的类.其对象常称为函数对象(function object),即它们是行为类似函数的对象. 一个类对象,表现出一个函数的特征,就是通过"对象名+(參数列表)"的方式使用一个类对象,假设没有上下文,全然能够把它看作一个函数对待. 这是通过重载类的operator()来实现的. "在标准库中.函数对象被广泛地使用以获得弹性".标准库中的非常多算法都能够使用函数对象或者函数来作为自定的回调行为: demo #include <iostr

django 带參数的 url

url就像筋络一样把django这个大框架的各个部分紧紧的连接成一个总体,所以要了解django从url開始是一个不错的方向. 一般的view template url的关系这里就不讲了,以下会具体介绍下在url中參数的传递的样例. 1.  简单的參数调用 url(r'^articles/(\d{4})/(\d{2})/$', 'news.views.month_archive'), 对于上面的url,假设用   /articles/2005/03/  来解析.最后就会解析到view到 news

Template /template/ajax/head.ftl not found

Struts2 Ajax出现错误“Template /template/ajax/head.ftl not found” 在核心包的目录:struts2-core-2.1.8.1\template下查看有哪些主题theme可用. 没有ajax主题,所以用theme="ajax"肯定出错,因为根本就没有"ajax"这个主题文件存在. 其中,css_xhtml.simple.xhtml中的文件格式为.ftl,这是视图FreeMarker默认的模板文件名后缀.xhtml是