路遥见人心,日久知马力

博客园 首页 新随笔 联系 订阅 管理
  1. 能用初始化列表就用

  2. 能写 explicit 就写

  3. 能用 c++11自带的跨平台函数、对象就用、但也要分情况,如果想完全知道自己在干什么就用系统API

  4. 能自己写的就不要让编译器生成

  5. 能分文件写的就别合起来!

  6. 一直记得delete或者free、多尝试用智能指针

  7. 执行代码的前置条件应该是各种前置条件全部设置好,各种对象都初始化好再进行、实在不行可以手动写个init函数,确保初始化的进行、一切变量在使用前都要初始化

  8. 能用 nullptr 就用、能用 auto 就用、能用 override 就用
  9. 父类的析构必须要写成虚函数、父类的构造拷贝析构都不继承,private虽然不继承但占内存。

  10. 注意静态的成员变量在外面初始化、静态的函数用两个冒号调用、两个冒号是很重要的运算符!

  11. 函数里不要乱new东西、容易忘记释放内存、更不能写个局部的东西然后返回这个变量的地址或引用给外面。能用智能指针就应该用

  12. 结构体默认的相互赋值是里面每个字段的赋值、类也可以是同理的、但也可以自定义方法

  13. memcpy很重要、对于C++和C语言、一片内存的操作很常见。但在 C++ 里用std下的 memset 、memcpy、memmove 吧!
  14. 头文件写定义,cpp写实现,这样最稳健

  1. 想用字符数组当字符串,需要注意:

    1. /0 的问题、/0直接影响各种相关函数的指向情况

    2. 处理时用strstr,strcpy,strlen等C函数!

    3. 转成 c++ string 再处理也行、注意c++的string头文件不带h

    4. 注意内存开多大合适

  2. 做任何事都要考虑内存越界

  3. 要多积累常见的代码和自己能掌握清楚细节的框架
  4. 能传递 const 引用就传
  5. char* const p 表示这个p一旦指向了某处,就不能指向别处

    const char* p 表示 p 指向的东西不能通过 p 修改

  6. 一旦某个类里写了个虚函数,这个类的孩子类和孙子类的同名函数写不写virtual都是虚的了!
posted on 2022-10-01 22:50  只讲大白话  阅读(108)  评论(0)    收藏  举报