zhouqijie

杂项讨论



在未来时态下开发程序

好的软件对于变化有良好的适应能力。好的软件可以容纳新的性质,可以移植到新平台,可以适应新的需求,可以掌握新的输入。把目光摆在未来时态的程序员才能写得出这样的软件。



将非叶子类设计为抽象类

GPT:

  1. 防止直接实例化。
  2. 确保接口的实现。
  3. 提高可维护性。



如何在同一个程序中结合C++和C

  1. 确定你的C++和C编译器产出兼容的obj文件。
  2. 将双方都使用的函数声明为extern "C"
  3. 尽量在C++中编写main。
  4. 总是用delete删除new的内存,总是以free释放malloc的内存。
  5. 两个语言间的struct传递,C++structs应该不能有虚函数,虚函数会改变内存布局。基类也不行。



(END)