原文:C++11模版元编程

.概述 模版元编程 template metaprogram 是C 中最复杂也是威力最强大的编程范式,它是一种可以创建和操纵程序的程序。模版元编程完全不同于普通的运行期程序,它很独特,因为模版元程序的执行完全是在编译期,并且模版元程序操纵的数据不能是运行时变量,只能是编译期常量,不可修改,另外它用到的语法元素也是相当有限,不能使用运行期的一些语法,比如if else,for等语句都不能用。因此, ...

2015-05-05 22:07 4 35108 推荐指数:

查看详情

C++11模版编程的应用

1.概述   关于C++11模板的基本用法和常用技巧,我在程序员2015年2月B《C++11模版编程》一文(后称前文)中已经做了详细地介绍,那么C++11模版编程用来解决什么实际问题呢,在实际工程中又该如何应用呢?本文将侧重介绍C++11模板的一些具体应用,向读者展示模版编程的具体应用 ...

Mon Aug 31 17:54:00 CST 2015 0 5394
C++11 之 并发编程 (一)

未来芯片制造,如果突破不了 5nm 极限,则 CPU 性能的提升,可能会依赖于三维集成技术,将多个 CPU 核集成在一起,使得多核系统越来越普遍。 以前的 C++ 多线程,一是受限于平台,多借助于封装好的 APIs 来完成,例如:POSIX threads,Windows threads ...

Sun Sep 04 21:12:00 CST 2016 1 4843
C++11模板编程-std::enable_if示例详解

C++11模板编程-std::enable_if示例详解 更新时间:2020年10月29日 09:24:06 作者:半杯茶的小酒杯 C++11中引入了std::enable_if函数,函数原型如下: 1 ...

Tue Feb 09 21:17:00 CST 2021 0 849
泛化之美--C++11可变模版参数的妙用

1概述 C++11的新特性--可变模版参数(variadic templates)是C++11新增的最强大的特性之一,它对参数进行了高度泛化,它能表示0到任意个数、任意类型的参数。相比C++98/03,类模版和函数模版中只能含固定数量的模版参数,可变模版参数无疑是一个巨大的改进。然而由 ...

Tue Mar 10 22:30:00 CST 2015 20 61929
C++11网络编程

Handy是一个简洁优雅的C++11网络库,适用于linux与Mac平台。十行代码即可完成一个完整的网络服务器。 下面是echo服务器的代码: 其中EventBase是事件分发器,内部使用epoll/kqueue进行IO事件分发。 EventBase功能丰富,还包含了定时任务等功能 ...

Thu Jun 25 18:08:00 CST 2015 0 4450
c++11模拟boost占位符placeholder

准备实现meta programming的fold函数,发现自己缺少占位符实现,这样传入fold的transform op类(函数)都不得不另外写个外覆类,其实我觉得没啥不好,简单直接,说实话干扰什么的没那么严重,一个功能块里能用fold的地方能有几次?但动了占位符这个念头,就想尝试实现一下 ...

Fri Oct 31 05:32:00 CST 2014 1 2940
C++11——多线程编程12 如何让线程在C++11中休眠

翻译来自:https://thispointer.com/how-to-put-a-thread-to-sleep-in-c11-sleep_for-sleep_until/ 在本文中,我们将讨论如何让 c++11 线程休眠 c++11提供了2个让线程休眠的函数,即 沉睡 ...

Fri Nov 19 04:46:00 CST 2021 0 4438
C++11新特性之字节对齐、多参数模版、placement new

1. 内存对齐   上面的代码演示了采用#pragma pack()方法实现内存对其。接下来介绍C++11中相关内存对其的方法。 1.1 alignas   alignas指定内存对其大小,有时候我们希望不按照默认的内存对齐方式来对齐,这时我们可以用alignas来指定内存 ...

Wed May 23 22:28:00 CST 2018 0 2779
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM