![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Effective C++
Dream_yz
没有最好,只有更好!
展开
-
尽量以const,enum,inline替换#define
尽量以const,enum,inline替换#define由于#define不被视为语言的一部分,故你可以编译器替换预处理器,即使用const,enum,inline替换#define。宏定义的名称可能不能进入记号表,从而在编译时报处错误,错误的名称且可能与定义的名称不同,而与值相同,从而导致查找错误较难。而解决此问题,可以使用常量来替换宏。如定义了如下宏:#define PI 3.14,改为con原创 2016-03-16 20:35:04 · 875 阅读 · 0 评论 -
尽可能使用const
尽可能使用constconst定义语义约束:制定一个不被改动的对象,编译器会强制实施这项约束。只要某值保持不变时事实,就应该确实说出来,这样编译器可以确保这项约束不违反。const多才多艺:可以用在classes外部修饰global或namespace作用域中的常量,或修饰文件、函数、或区块作用于中被声明为static的对象。它可以用来修饰classes内部的static或non-static成员变原创 2016-03-16 22:46:31 · 874 阅读 · 0 评论 -
视C++为一个语言联邦
视C++为一个语言联邦简介C++是个多重泛型编程语言,同时支持以下形式的语言:1)过程形式;2)面向对象形式;3)函数形式;4)泛型形式;5)元编程形式。理解C++的方法:将C++视为一个由相关语言组成的联邦而非单一语言。在其某个次语言中,各种守则与通例都倾向简单、直观易懂、并且容易记住。当从一个次语言移至另一个次语言,守则可能改变。下面主要介绍C++的主要次语言。CC++是以C为基础的。区块、语句原创 2016-03-15 22:00:49 · 897 阅读 · 0 评论 -
Effective C++ 55个条款
Effective C++ 55个条款让自己习惯C++视C++为一个语言联邦C++高效编程守则是状况而变化,取决于你使用C++的哪一部分。尽量以const,enums,inline替换#define对于单纯常量,最好以const对象或enums替换#defines;对于形似函数的宏(macros),最好改用inline函数替换#defines。尽可能使用const将某些东西声明为const可帮翻译 2016-04-25 19:50:43 · 4568 阅读 · 0 评论