Fork me on GitHub
摘要: 1)用 const 修饰函数的输入参数 如果输入的参数采用“指针传递”,那么加 const 修饰可以防止意外地改动该指针,起到保护作用。 如果输入参数采用“值传递”,由于函数将自动产生临时变量用于复制该参数,该输入参数本来就无需保护,所以不要加 const 修饰。 对于非内部数据类型的输入参数,应该 阅读全文
posted @ 2024-07-18 10:24 墨小语 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 1. 引入 每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)。对于任意一个类 A,如果不想编写上述函数,C++编译器将自动为 A 产生四个缺省的函数,如 A(void); // 缺省的无参数构造函数 A(const A &a); // 缺省的 阅读全文
posted @ 2024-07-18 10:13 墨小语 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 1. 成员函数重载特征 相同的范围(在同一个类中) 函数名称相同 参数不同 virtual 关键字可有可无 2. 覆盖的特征 覆盖是指派生类函数覆盖基类函数,所以范围不同(分别位于派生类和基类) 函数名称相同 参数相同 基类函数必须有 virtual 关键字 如下示例中,函数 Base::f(int 阅读全文
posted @ 2024-07-18 09:53 墨小语 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 1. 内存分配的方式 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量, static 变量。 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很 阅读全文
posted @ 2024-07-17 15:28 墨小语 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 1. 参数的规则 函数参数书写要完整,若没有参数,则用 void 填充。 函数参数的名称要有意义。对于 strcpy 等功能的函数,要将目的参数写在前面,源参数放在后面。 参数是指针的,且仅作为输入用的,应在类型前加 const,以防止该指针在函数体内被意外修改。 参数是以值传递的方式传递对象的,宜 阅读全文
posted @ 2024-07-17 09:43 墨小语 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 尽量使用含义直观的常量来表示那些将在程序中多次出现的数字或字符串。 在 C++ 程序中只使用 const 常量而不使用宏常量,即 const 常量完全取代宏常量。需要对外公开的常量放在头文件中,不需要对外公开的常量放在定义文件的头部。为便于管理,可以把不同模块的常量集中存放在一个公共的头文件中。 c 阅读全文
posted @ 2024-07-15 20:25 墨小语 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 1. 运算符优先级 如果代码行中的运算符比较多,用括号确定表达式的操作顺序,避免使用默认的优先级。 2. 复合表达式 不要编写太复杂的复合表达式。 不要有多用途的复合表达式。 不要把程序中的复合表达式与“真正的数学表达式”混淆。 3. if 语句 不可将布尔变量直接与 TRUE、 FALSE 或者  阅读全文
posted @ 2024-07-14 15:14 墨小语 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 标识符应当直观,可望文知义。 标识符的长度应当符合“min-length && max-information” 原则。 命名规则尽量与所采用的操作系统或开发工具的风格保持一致。 程序中不要仅靠大小写区分相似的标识符。 程序中不要出现标识符完全相同的局部变量和全局变量。 变量的名字应当使用“名词”或 阅读全文
posted @ 2024-07-14 14:50 墨小语 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 1. 空行 在每个类声明之后、每个函数定义结束之后都要加空行。 在一个函数体内,逻揖上密切相关的语句之间不加空行,其它地方应加空行分隔。 2. 代码行 一行代码只做一件事情,如只定义一个变量,或只写一条语句。这样的代码容易阅读,并且方便于写注释。 if、 for、 while、 do 等语句自占一行 阅读全文
posted @ 2024-07-14 12:32 墨小语 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 1. 版权和版本的声明应位于头文件和定义文件的开头,主要包括的内容有: 版本信息。 文件名称、文件标识、摘要。 当前的版本号、作者/修改者、完成日期。 历史版本信息(取代版本、原作者、完成日期)。 2. 头文件结构 为了防止头文件被重复引用,应当使用 ifndef/define/endif 结构产生 阅读全文
posted @ 2024-07-14 12:11 墨小语 阅读(12) 评论(0) 推荐(0) 编辑