找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 3180|回复: 1

【C艹】总结C艹面向对象编程的一些经验

[复制链接]

1111

主题

1651

回帖

7万

积分

用户组: 管理员

一只技术宅

UID
1
精华
244
威望
743 点
宅币
24239 个
贡献
46222 次
宅之契约
0 份
在线时间
2297 小时
注册时间
2014-1-26
发表于 2015-4-4 20:12:54 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有账号?立即注册→加入我们

×
注意:我不用C++。我只是说说而已。。。

1、使用预编译头。
2、对于每个类,建立两个文件:“类名.cpp”和“类名.h”
3、用头文件定义类,类的“方法”按照以下方式划分:
  • 需要公开实现方式
    对于需要公开实现方式的“方法”,使用inline关键字(记得用宏将其重新定义一下,免得有些平台的C艹编译器不支持inline,在那种情况下你可以把宏的定义换成另一个关键字static来使其编译通过),然后将实现写在头文件中。不要写在类的定义里,要用“类名::方法”的方式定义,以便于阅读。
  • 需要不公开实现方式
    对于需要不公开实现方式的“方法”,不能使用inline关键字。将实现写在对应的cpp文件中。cpp只包含预编译头。

    其中应该将简短的“方法”进行公开,而复杂的方法或者应该进行保护的“方法”则写进cpp。
4、如果有必要,使用命名空间将自己定义的类进行封装。
5、尽可能不将自己类实现某些方法时用到的其它库的头文件包含进类的头文件,而是将其藏到cpp文件或者预编译头中,以防止命名空间污染。
6、尽可能先写好头文件以及其中的类的公开实现的“方法”的实现部分,然后再写cpp文件,因为改动了头文件后预编译头就要重新生成——那通常很耗时!
7、对于成员变量,如果它是对外只读的,将其设置为private或者protected成员,提供内联的Get方法,如果是只写的,提供Set方法。而如果它是可读写并且不需要在读写的时候执行额外的操作的话,没必要给它写Get和Set,直接将其设置为public成员即可。
8、写好文档,描述清楚各个类之间的关系以及用法。
9、要么纯粹进行面向对象编程,要么纯粹进行面向过程编程。面向对象时尽可能减少“全局函数”、“全局变量”的使用。
10、没有实现的“方法”,用注释写上“TODO:”作为备忘。
回复

使用道具 举报

29

主题

315

回帖

1561

积分

用户组: 上·技术宅

UID
3808
精华
11
威望
105 点
宅币
702 个
贡献
165 次
宅之契约
0 份
在线时间
404 小时
注册时间
2018-5-6
发表于 2018-8-8 10:45:39 | 显示全部楼层
哦那个TODO是用来备忘的啊,之前看到别人喜欢写这个TODO,现在明白了。
Passion Coding!
回复 赞! 靠!

使用道具 举报

QQ|Archiver|小黑屋|技术宅的结界 ( 滇ICP备16008837号 )|网站地图

GMT+8, 2024-4-23 17:15 , Processed in 0.043972 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表