C++ 提升学习笔记
1、使用ISO标准C++编写代码
C++标准对操作系统、文件存储、屏幕均无具体要求,C++没有一个受资助的库开发组织,需利用每种标准环境的特性,来实现C++标准库中没有提供的功能。
C++编译器实现者必须完全、准确地支持C++标准,但同时预留空间添加额外特性或扩展,C++标准不允许实现者在std名字空间添加新地标识符,意味着对C++开发者而言一不小心写出看似使用了标准特性,实际碰巧使用了编译器地特定特性地代码。为此建议在多编译器和操作系统上构建并测试代码,从而发现意外地非标准代码。
C++扩展:Qt库使用信号和槽地特性在对象之间通信,Qt添加了3个关键字—Q_SIGNALS、Q_SLOTS、Q_EMIT来应用该特性。Qt提供moc工具解析这些关键字,生成C++编译器能完全正确解析地输出,类似于Cfront解析早期C++代码。其输出可以被C++编译器使用。
ISO C++标准非常明确,没有歧义。
#progma once告诉编译器不要把一个文件#include两次。你不能假设某个东西地含义会在不同地平台间保持一致,在这样地情景下建议使用头文件保护符(head guard)而不是使用#progma once
操作系统地实现、基础类型地变化都是系统变数
编译宏使用、i32实例替换为std::int32_t
出于监管需要,有时无法使用ISO标准C++,具体问题具体分析。
在嵌入式开发中、监管、系统认证、老式地基础设施都可能迫使采用C++11、甚至C++,C++依赖于向后兼容,数十年地稳定性是一种特性。要求:编写面向未来地代码,以及学会阅读过去地代码。*
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)