IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> c与c++程序员的编程修养 -> 正文阅读

[C++知识库]c与c++程序员的编程修养

1.版权和版本

好的程序员会给自己的每一个文件和函数都注明版权和版本;比如文件头部应该有这样的注释:

	/******************************************************
	* 文件名:hello.cpp
	* 文件描述:提供一个打印hello world的函数
	* 创建人:jinNiu.Yang
	* 创建时间:2021/12/15
	* 版本号:1.0
	* 修改记录:
	******************************************************/

函数应该有这样的注释:

	/******************************************************
	* 函数名:XXX
	* 参数:
	* 功能描述:
	* 返回值:
	* 抛出异常:
	* 作者:
	******************************************************/

2.缩进、空格、换行、空行

  1. 缩进:一个缩进一般是一个TAB键;
  2. 空格:在语句中各个操作符之间加空格;函数传参时在各个参数间加空格;
  3. 换行:不同语句之间换行;函数参数多时换行;
  4. 空行:程序块之间,最好加上空行;

3.注释

一般来说你写这些地方的注释:文件、函数、变量(用来干嘛)、算法、功能块;

4.函数的入参和返回值

写有参数的函数时,首要工作,就是要对传进来的所有参数进行合法性检查;对于返回值也一样;比如入参是指针就要考虑为空指针的情况,当然,在c++中使用引用比使用指针要好的多;
返回值是指针也一样。

5.if语句对出错的处理

if语句处理错误时,不要使用else,而是先判断错误,比如下面例子:

	if(a == 0)                                if(a != 0)
		.......      ------------>>               出错处理
	else                                          return; 
		出错处理	                          .........

6.头文件防止多次编译

头文件中千万不要忘了防止多次编译,一般格式为(比如stdio.h):
	#ifndef _STDIO_H_
	#define _STDIO_H_
	
	..........
	
	#endif

7.在堆上分配内存

malloc或new函数是从堆上分配内存,系统不会自动释放,需要自己手动释放,不然会产生内存泄漏(Memory Leak);然后系统可以分配的堆内存越来越少,直到系统崩溃;以下有几个注意的点:

  1. 谁申请谁负责释放;类、函数
  2. malloc分配的内存一定要初始化,free后指针一定要置为null;
  3. 虽然现在操作系统都会帮助我们释放,但也不会释放掉所有的,最好还是自己释放;IBM公司的工具Purify可以帮助我们检查Memory Leak;

8.标识符命名(函数名、变量名)

  1. 见名知意,要最短长度也要最大限度表达其含义;
  2. 可以简写,但也要让人看得明白:ErrorCode–>ErrCode;
  3. 用匈牙利命名法命名函数参数、局部变量;用驼峰命名法命名全局变量、静态变量;
  4. 与标准库(如:STL)或开发库的命名风格保持一致;

9.修改别人程序的修养

当维护别人的代码时,不要主观臆测的把已有程序删除或修改,可以注释掉再添加自己的代码;这样好恢复,也是对原作者的一种尊敬;

10.将相同或近乎相同的代码形成函数和

如果有一些程序的代码段很相似甚至直接一样,就可以将其放入一个函数中直接调用;如果代码不多,就可以把它写成宏函数;

11.函数参数个数如果多了请用结构体

一般多于6个就应该使用结构体,返回值也一样;这样要是要增加数量的话,可以不用改函数,直接改结构体就行;

12.函数中的代码尺寸

一个函数只完成一个具体的功能,一般来说,一个函数代码最好在100行到300行左右;有证据表明,一个函数代码超过500行,就会有与之前代码重复或相近的代码;

13.为常量声明宏

最好不要在程序中出现数字式的“硬编码”,如:int user[120];应该为120声明一个宏,这样维护性会高,要改所有引用120的地方,只需要修改宏就好;

14.不要忽略Warning

就算Warning不会妨碍目标代码的生成,但是请不要忽视他们,修正每一个Warning是一个有修养的程序员应该做的事;

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-26 21:57:27  更:2021-12-26 21:58:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 11:24:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码