低级编程

相对于高级编程而言,低级编程更加依赖于硬件,它往往指位和字节级别的编程,主要应用于嵌入式编程,也可用来提升程序效能。
POD(Plain Old Data),简单的旧数据,指标量、没有构造函数的旧式结构体、基类、私有数据、虚拟函数等。POD在以字节为单位进行复制这方面来说是安全的。C++11可以把应用旧标准C++98而开发出来的程序去除一些限制但仍然保留POD特性以便于以字节进行复制。
共用体也发生了变化。C++11允许共用体带有构造函数和析构函数,在其他方面也添加了新的限制,比如说不允许虚拟函数。共用体经常用于最小化内存占用。
C++11中的内存对齐。alignof操作符提供了对某种类型在内存对齐方面的说明。Alignas可以用于控制内存对齐。
Constexpr机制允许编译器把一个编译期表达式计算成为一个常量值。在低级编程方面这个机制允许const量存储在只读内存区,这一点在嵌入式编程中尤其有用。无论是不是const变量,只要这个变量在运行期被初始化的,都存储在内存的随机存储区中。
C语言中的stdint.h和C++中的cstdint支持扩展类型。
C++11支持二进制标签,这个标签可以通过标签操作符转换成一个整型值。
C++11提供了static_assert用于测试编译期表达式的真假,这类似于assert,但与之不同,assert用于判断运行期的表达式。Static_assert主要用于简化编译期发生的模版的实例的调试工作。
C++11还支持元编程。关于这一点Effective C++中曾提过模版元编程。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 简介 C++98/03的设计目标:一、比C语言更适合系统编程(且与C语言兼容)。二、支持数据抽象。三、支持面向对象...
    认真学计算机阅读 10,742评论 0 53
  • 1、序可能是外面的炎热,身上的汗臭,逼仄的笔记本屏幕,这几种糟糕的事物聚集在一起,导致现在一点写作热情都没有。不过...
    吃根香蕉压压惊阅读 3,584评论 0 0
  • 1、序由于这篇文章是这个版块的第一篇,所以本篇文章的格式,将作为后面文章的基本格式。文章的基本布局为:序、实现及说...
    吃根香蕉压压惊阅读 3,878评论 1 2
  • 人生总是有很多不如意,但都是心里因素在作怪!想开了看透了,就不痛苦了!欲望无止境,知足才常乐!一个人能拥有多少,不...
    卉小阅读 1,639评论 0 0
  • 早晨起来,我不是被闹钟吵醒的,而是听到了外面同学们吵闹声,我揉了揉眼睛下了床。今天的行程一定非常的美妙,因为他一...
    百合花赵崟阅读 2,976评论 0 0

友情链接更多精彩内容