2012-6-25 c++的一些知识(总算是明白了) 初学者
来源:互联网 发布:淘宝jbl官方旗舰店 编辑:程序博客网 时间:2024/05/16 19:15
http://blog.csdn.net/zhanxinhang/article/details/6786269
c++面向对象编程必备“良方
针对自己编程过程中遇到的问题,记录一下(作者已经总结好了,copy作为日志)
药方1 ☞ 必需时刻明白面向对象编程中要扮演的两个角色,一个就是你,类的设计者,一个就是用户,类的使用者,你的设计是针对用户而言的,当然你也可能是身兼两职,同时是设计者又是用户。
药方2 ☞ 设计一个类时,将声明放于头文件,定义放在cpp文件中,因为类是给用户使用的,将声明放在头文件中,用户便可以方便使用,而定义在cpp文件中主要是为了两点,一提高编译效率,二避免用户包含文件后发生重定义。
药方3 ☞ 声明完一个类后必须以分号结束,因为声明完一个类后后面还可以加一个对象名,用来声明该类的实例化对象,分号‘;’ 不是表示声明的结束,而是表示声明该类对象的结束,如果单纯一个分号表示没有声明任一对象。
药方4 ☞ 避免在构造函数里实例化本类,否则会发生递归死循环。
药方17☞ 在继承层次中,基类应该定义一个虚析构函数,因为非虚析构函数不会被继承,而虚析构函数会在派生类定义析构函数时发生重定义(就是虚表指针指向了派生类的析构函数)。在利用基类指针实现多态时,基类指针指向了新开辟(new)的派生类对象,这时由于基类的析构函数是虚的,所以再利用基类指针释放(delete)掉派生类对象内存时,就可以顺利地执行派生类的析构函数了。
补充:
以前遇到hpp还以为是个什么东东呢!
hpp=h+cpp,它本质是让编译器只对hpp文件里的内容编译一次,然后将目标代码附到包含它的cpp目标文件中。一般设计类时应该是h和cpp分开来,因为这更符合软件工程中的方法。hpp一般都是设计模板类的时候使用的多。- 2012-6-25 c++的一些知识(总算是明白了) 初学者
- SDRAM DQM的解释,总算明白了
- 总算是搞明白了IE的PAC代理设置方式
- 总算是明白 java正则表达式 中 Greedy 、Reluctant 、Possessive数量词的区别了
- java中的switch语句中break和continue的区别--------总算是弄明白了
- java中的switch语句中break和continue的区别--------总算是弄明白了
- 父母不同意结婚肯定有他们的理由,我现在也总算是明白了,一切也是他们看透了!
- 每次写算法程序的时候总是纠结在动态分配内存上面,这次总算是明白了
- 总算是用上了linux
- CAD总算是完整了
- CAD总算是完整了
- 总算明白一些简单的问题,int与Integer具体应用
- 总算是找到一块安全的地儿了。
- 总算是把Struts2的乱码问题解决了!!!
- (2012-02-15 旧博文搬家)第一个网站总算是基本完工了
- 原来是这样的,我明白了,
- Java 初学者要知道的一些知识(未完待续)
- 似乎明白了《结网》的一些道理
- Delphi 编写 数字签名验证 并获取签名信息
- QT 类及其实现效果(3)--启动画面与图像变换
- 限制textarea输入字数
- 数据库索引
- 使用QueryPerformanceFrequency、QueryPerformanceCounter精确计时
- 2012-6-25 c++的一些知识(总算是明白了) 初学者
- WPARAM 和 LPARAM 使用
- poi导入excel判断单元格类型及转换
- 内存详解-理解 JVM 如何使用 Windows 和 Linux 上的本机内存
- Struts2原理
- Dialog使用详解——开源项目Standup Timer学习总结(三)
- chrome 相关网址汇总
- Apache ActiveMQ教程(一)
- Android----http请求工具类