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

怎么样创办一个网站凡客生活

怎么样创办一个网站,凡客生活,医院网站asp,做网站和app那个花销大策略类模板 在前面的博文中#xff0c;策略类SumPolicy和MinPolicy都是普通的类#xff0c;其中包含的是一个静态成员函数模板algorithm()#xff0c;该函数模板包含两个类型模板参数。其实#xff0c;也可以把SumPolicy和MinPolicy类写成类模板—直接把algorithm()中的两…策略类模板 在前面的博文中策略类SumPolicy和MinPolicy都是普通的类其中包含的是一个静态成员函数模板algorithm()该函数模板包含两个类型模板参数。其实也可以把SumPolicy和MinPolicy类写成类模板—直接把algorithm()中的两个类型模板参数搬到类定义上面作为类模板的模板参数就可以了。类模板SumPolicy和MinPolicy的实现代码如下。 templatetypename sumT,typename T struct SumPolicy {static void algorithm(sumT sum, const T value){sum value;} };templatetypename minT,typename T struct MinPolicy {static void algorithm(minT min, const T value){if (min value)min value;} };当然同样要修改funcsum()函数模板该函数模板的第3个类型模板参数要作出改变当前第3个类型模板参数的默认值是SumPolicy这是一个类型但是修改后的SumPolicy已经是一个类模板了所以funcsum()函数模板的第3个模板参数必须是一个模板模板参数。修改后的funcsum()函数模板如下。 // 这里的class也可以写成typename templatetypename T,typename U SumFixedTraitsT,templateclass,class class V SumPolicy auto funcsum(const T* begin, const T* end) {typename U::sumT sum U::initValue();for (;;){VU::sumT, T::algorithm(sum, *begin);// T时数组成员类型U是固定萃取类模板从中可以提取出计算的结果类型(U::sumT)// 以及结果的初值V是策略类模板用于实现具体算法(求和求最小值等)if (begin end)break;begin;}return sum; }完整且完美的代码如下: #include killCmake.h#includestringusing namespace std;templatetypename T struct SumFixedTraits;template struct SumFixedTraitschar {using sumT int;static sumT initValue() {return 0;} };template struct SumFixedTraitsdouble {using sumT double;static sumT initValue() {return 0.0;} };templatetypename T struct MinFixedTraits;template struct MinFixedTraitsint {// 求最小值结果类型与元素类型相同即可// 为名字统一都用sumT这个名字using sumT int;static sumT initValue(){// 这里给整型最大值相信任何一个数组元素都不会比这个值更大// 因此可以顺利找到数组元素中的最小值return INT_MAX;} };templatetypename sumT,typename T struct SumPolicy {static void algorithm(sumT sum, const T value){sum value;} };templatetypename minT,typename T struct MinPolicy {static void algorithm(minT min, const T value){if (min value)min value;} };// 这里的class也可以写成typename templatetypename T,typename U SumFixedTraitsT,templateclass,class class V SumPolicy auto funcsum(const T* begin, const T* end) {typename U::sumT sum U::initValue();for (;;){Vtypename U::sumT, T::algorithm(sum, *begin);// T时数组成员类型U是固定萃取类模板从中可以提取出计算的结果类型(U::sumT)// 以及结果的初值V是策略类模板用于实现具体算法(求和求最小值等)if (begin end)break;begin;}return sum; }int main() {int my_int_array1[] { 10,15,20 };std::cout funcsumint, MinFixedTraitsint, MinPolicy( my_int_array1[0], my_int_array1[2]) std::endl;return 0; } 萃取技术与策略技术的比较 之前的博文学习了萃取trait技术也学习了策略policy技术对于萃取技术通过范例展示了固定萃取和值萃取对于策略技术展示了算法策略。萃取技术和策略技术很相似注意它们之间的相同与不同之处。 1两种技术都像一个中间件一样夹在不同的功能代码之间使代码之间的调用交互更加灵活。2萃取技术传入一个类型萃取出另外一个类型或值注重类型或值而策略技术是传入一个类型萃取出一个算法或者说是一个不同的功能实现注重动作或行为。因此书写策略类类模板时通常都需要包含成员函数以实现指定的行为。但在实际的项目实现中也可能会在萃取类中实现某些动作或行为从这个角度来讲两种技术有时区分并不是那么明显。3萃取技术一般通过一个类模板来实现通常包含类模板的泛化版本和多个特化版本。而策略技术用普通类或类模板都可以实现。
http://www.hkea.cn/news/14461853/

相关文章:

  • 网站建设公司哪个好点价格便宜的网站建设
  • 做第三方网站注意什么wordpress 重置密码链接
  • 网站的规划与建设课程设计班级网站设计wordpress
  • 招聘网站开发费用网站浮动条
  • 成都网站建设哪家公司好网站快速收录提交
  • 自助网站搭建系统上海企业网站设计公司电话
  • 西部数码里面如何建设自己的网站长沙网站制作合作商
  • 深圳市住房建设局网站怎么打不开网页制作如何新建站点
  • 花都 网站建设网站备案安全承诺书
  • 网站做第三方登录网站怎么加背景音乐
  • 公司合法网站域名怎么注册想学网站建设选计算机应用技术还是计算机网络技术哪个专业啊
  • 资讯网站做app网站设计流程的步骤包括
  • 怎么在58同城上做网站公众号开发者模式
  • 个人网站可以做百度推广么网站暂时关闭怎么做
  • 网站字体大小选择河南郑州建设网站制作
  • 山西自助建站费用低电梯网站建设
  • 有什么教做甜品的网站提高网站排名的方法
  • ASP动态商业网站建设案例网站建设 账务处理
  • 厦门网站制作方案网站开发需求说明书
  • 农机公司网站建设用织梦做的手机网站怎么才能和电脑同步
  • 创意产品设计图seo关键词选择及优化
  • 郴州 网站建设wordpress媒体库 下载
  • 一般公司做网站多少钱长春做网站优化哪家好
  • 那个网站做图片好做一个营销型网站
  • 做推广哪个平台网站好wordpress订阅地址
  • 孝感网站制作公司福建建设厅网站官网
  • 哪个网站做图书广告好东莞网站推广设计
  • 制作网站深圳28岁女生学前端开发难吗
  • 东莞网站设计知名乐云seo广告营销文案
  • 郑州建站程序seo综合查询工具有什么功能