中文编程命名法
2014-03-06 19:32
253 查看
本人不喜欢英语(四级没过...), 所以一直用中文写代码, 除了关键字和别人写的库, 剩下的都是中文. 说实话, 我看着满屏的中文觉得挺舒服的.
易语言是我的启蒙语言, 后来用c++, 还是保留了用中文写代码的习惯. 写代码的过程经常出现一些名字重复的情况, 比如"使用", 不看上下文根本不知道这是变量还是函数还是参数, 我便想了一些办法来解决, 久而久之也发明了一套中文编程命名法, 以中文为主, 英文用来做标记提高可读性.
int a, b, c;//偷了个懒
常量我分成编译期常量和运行期常量, 编译期常量用c开头, 运行期常量用v开头
参数名以p开头, 因为参数很容易跟变量重名
枚举用e开头
enum E状态 {
e甲,
e乙,
e丙
};
类型别名用小写t开头
指针, 不管是指针还是指针的指针, 都用p表示.
函数指针f
是否w, 常用于函数.
获取g/设置s, 比英文的get/set简短多了.
其它
有一些东西没有前缀, 比如命名空间, 宏, 因为这种东西加不加前缀影响不大.
还有输入法的问题, 最好使用能快速切换中英文的输入法, 比如搜狗, qq, 微软, 按shift键就能切换中英文.
易语言是我的启蒙语言, 后来用c++, 还是保留了用中文写代码的习惯. 写代码的过程经常出现一些名字重复的情况, 比如"使用", 不看上下文根本不知道这是变量还是函数还是参数, 我便想了一些办法来解决, 久而久之也发明了一套中文编程命名法, 以中文为主, 英文用来做标记提高可读性.
偷懒原则
有时候为了偷工减料, 可以使用一些比较短的名字. 比如:int a, b, c;//偷了个懒
变量/常量
变量名统一用v开头命名.常量我分成编译期常量和运行期常量, 编译期常量用c开头, 运行期常量用v开头
int v数组[] = {1, 2, 3, 4}; const int c数量 = 4;
参数名以p开头, 因为参数很容易跟变量重名
void f(int p数字) { v数字 = p数字; }
枚举用e开头
enum E状态 {
e甲,
e乙,
e丙
};
函数
函数用f开头bool f是() { return v是; }
类型
定义的类型都用大写开头, 然后对应的英文首字母: C类, S结构, I接口, E枚举, U联合类型别名用小写t开头
typedef int t整数; //↓模板 template<typename t> f(t) {}
二级前缀
前面都是一级前缀, 主要用来说明"这是什么?", 二级前缀是接在一级前缀后面, 主要说明"作用". 在不影响可读性的情况下通常可以省略二级前缀.指针, 不管是指针还是指针的指针, 都用p表示.
int vp数组 = v数组;
函数指针f
std::function<void(std::function<void()>)> vf = [](std::function<void()> pf) { pf(); }
是否w, 常用于函数.
bool fw创建(); bool fw有效();
获取g/设置s, 比英文的get/set简短多了.
float fg大小(); float fg方向(); void fs大小(float); void fs方向(float);
其它
有一些东西没有前缀, 比如命名空间, 宏, 因为这种东西加不加前缀影响不大.还有输入法的问题, 最好使用能快速切换中英文的输入法, 比如搜狗, qq, 微软, 按shift键就能切换中英文.
相关文章推荐
- eclipse 常用操作
- Eclipse打JAR包的使用
- 汉诺塔递归演示
- PAT_1055 world richest 多键排序
- QTAF接口自动化框架–从零开始构建接口测试(三)
- PHP_Cooikes不同页面无法传递的问题
- 计算字符串的相似度
- 结构体类型(一般方式和位域存储方式)的sizeof
- [delphi]小程序一例,自动生成随机数。
- windows下的C++ socket服务器(3)
- [.NET]自学项目日记1
- ASP.NET中XML转换为JSON,JSON转换为XML的方法
- 不能不记住的编程经验总结
- qt书籍推荐
- PHP中生成静态html文件
- OGG_GoldenGate检查点应用Checkpoint(案例)
- Spring MVC概述---15.1.3: 一个简单的实例
- 有序的结构体数组
- 简易的java上传商品的程序
- ubuntu 12.04 安装eclipse