当前位置: 首页 > news >正文

广州企业自助建站/网站里的友情链接

广州企业自助建站,网站里的友情链接,免费xyz域名注册,网站加速代码模板与泛型编程1. 定义模板1.1 函数模板2. 可变参数模板1. 定义模板 1.1 函数模板 1.非类型模板参数 模板参数可以是类型,也可以是非类型,如整型、关联对象或函数类型的指针或左值引用。   模板参数是类型时,模板参数类型是typename或class…

模板与泛型编程

  • 1. 定义模板
    • 1.1 函数模板
  • 2. 可变参数模板

1. 定义模板


1.1 函数模板



1.非类型模板参数

  模板参数可以是类型,也可以是非类型,如整型、关联对象或函数类型的指针或左值引用。
  模板参数是类型时,模板参数类型是typename或class。模板参数是非类型时,模板参数类型就是对应的模板参数的类型:整型、指针或引用。

template<typename T, size_t N>
void fun(T (&arr)[N]) { cout << N << endl; }

  函数fun接受任何类型的数组名,都能输出数组长度。
  数组长度不需要在调用时用尖括号给出,模板就能推断出数组长度。也就是说这样调用就可以fun(arr),而不需fun<10>(arr)。但数组长度外的其它非类型参数是需要在尖括号内给出的:

// 1. 模板函数。
// 整型
template<int n>
void fInteger1() { cout << n << endl; }
template<int n>
void fInteger2(int (&a)[n]) { cout << n << endl; }
// 指针。
template<int* p>
void fPointer() { cout << *p << endl; }
// 引用。
template<int (&r)[1]>
void fReference() { cout << r[0] << endl; }
// 函数指针。
template<void (*f)(int)>
void fFunpointer(int x) { f(x); }
// 2. 实参。
int a[3] = { 1, 2, 3 };
int p[1] = { 4 };
int r[1] = { 5};
void f(int x) { cout << x << endl; }
// 3. 测试。
int main() {fInteger1<3>(); // 给定模板参数。fInteger2(a); // 从实参推断模板参数。fPointer<p>(); // 给定模板参数。fReference<r>(); // 给定模板参数。fFunpointer<f>(6); // 给定模板参数。
}

2. 可变参数模板


1. 参数包

class Example { public: Example(int a, int b) { cout << a << " " << b << endl; } };
void print(int a, int b) { cout << a << " " << b << endl; }template<typename... Args>
void testArgsPkg(Args... args) {Example e = Example((args)...); // 1.参数包做初始化参数。print((args)...); // 2.参数包做函数参数。cout << sizeof...(args) << endl; // 3.输出参数包内参数个数而不是字节数。
}int main() {testArgsPkg(1, 3);
}

  第 4 至 9 行定义了一个使用参数包的函数 testArgsPkg。可以向该函数传入任意个实参。

http://www.jmfq.cn/news/4952827.html

相关文章:

  • 单页面网站制作/外链交换平台
  • 建设机械网站方案设计/2022新闻热点事件简短30条
  • 全国做网站最好的公司/流量神器
  • 赌球网站怎么做/什么是seo
  • 网站需要做实名认证如何做/自己怎么搭建网站
  • 做可转债好的网站/网站app开发公司
  • 卖汽车配件怎么做网站/关键词怎么找出来
  • 简约网站首页/安徽网站建设优化推广
  • 学校网站建设栏目有哪些/营销型企业网站建设步骤
  • 网络促销分类 网站促销/今天热点新闻
  • 自己做发卡网站/沈阳网络seo公司
  • 厦门建网站哪家好/目前最靠谱的推广平台
  • 网站建设中企动力优/浏览器下载安装2023版本
  • h5商城网站开发/广告服务平台
  • 排版设计招聘/seo和sem
  • dedecms如何做音乐网站/优化大师免安装版
  • 南城微信网站建设/活动软文模板
  • 上海网站建设公司电话/宁德市教育局官网
  • 重庆市建设工程施工安全管理网站/百度写作助手
  • 石家庄网站建设推广公司报价/学做网站需要学什么
  • 一些做的好的网站/网站权重怎么看
  • 创建一个网站网站空间费用/百度搜索引擎排行榜
  • 做g3云推广需要网站/百度快速优化软件
  • 广告平台投放广告/seo外包公司多少钱
  • 免费域名空间网站/seo外链工具
  • 网站颜色编号/如何推广自己的网站
  • 自己做网站需要主机吗/最新最好的磁力搜索
  • wordpress电影源码/seo策划
  • 做网站和做网页有啥区别/百度应用商店app
  • 眉山网站制作/山西seo