c++对c的改进主要有哪些方面?(对c++的一些思考(一))
能用初始化列表就用
能写 explicit 就写
能用 c++11自带的跨平台函数 、对象就用 、但也要分情况 ,如果想完全知道自己在干什么就用系统API
能自己写的就不要让编译器生成!
能不用泛型就不用!否则应该小心出错的情况
能分文件写的就别合起来!
一直记得delete或者free
初始化列表的赋值顺序是在类里定义的顺序 、跟初始化列表的书写顺序无关
执行代码的前置条件应该是全部设置好 ,各种对象都初始化好再进行 、实在不行可以手动写个init函数,确保初始化
避免闭包等高级内容 ,别没事找事
父类的析构要写虚函数 、父类的构造拷贝析构都不继承 ,private虽然不继承但占内存 。
注意静态的成员变量在外面初始化 、静态的函数用两个冒号调用 、两个冒号是很重要的运算符!!!
项目驱动 ,理解为王 、动手要多 、多看多练
函数里不要乱new东西、容易忘记释放内存 、更不能写个局部的东西然后返回这个变量的地址或引用给外面 。能用智能指针就应该用
能用初始化列表就用 ,尤其是初始化一个结构体 。
结构体的相互赋值是里面每个字段的赋值 、类也可以是同理的、但也可以自定义方法
头文件写定义 ,cpp写实现 ,这样最稳
任何的函数应该只能修改:
1 专门为了传出去所以传入的指针变量 、引用变量
2 某个全局量
3 静态量
4 成员变量
想用字符数组当字符串 ,需要注意:
/0 的问题 、/0直接影响各种相关函数的指向情况
处理时用strstr ,strcpy ,strlen等C函数!
转成 c++ string 再处理也行、注意c++的string头文件不带h
注意内存开多大合适
做任何事都要考虑内存 、各种错误 、异常情况的处理 、程序是否会出现崩溃的可能 、要多测试(尤其是网络程序)
要多写配套的脚本工具,工具类 ,配置文件!真正的主程序应该是在充分的依赖上建立起来的 、要先思考这个项目的整体架构 、运用什么界面库 ,服务器运行在哪,交互顺序怎么样 ,数据库和中间件用不用 ,用什么...等问题
char* const p 表示这个p一旦指向了某处,就不能指向别处
const char* p 表示 p 指向的东西不能通过 p 修改
一旦某个类里写了个虚函数 ,这个类的孩子类和孙子类的同名函数写不写virtual都是虚的了!创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!