More Effective C 学习笔记六: 杂项

1.在未来时态下开发程序

  • 用c++语言来表达设计上的约束条件,而不是使用注释或者文档。
  • 注意虚析构函数
  • 等等

2.将非尾端类设计为抽象类

3.如何在同一程序中混合使用c++和c

  • 确保产生兼容的obj文件
  • 名变换

因为c没有函数重载,所以没有名称变换,所有需要显示告诉c++编译器不能对其他语言的函数进行名称变换,

使用 extern 'C'指示。不仅仅指示c语言,

通过只在c++编译器下定义的宏_cplusplus

#ifdef _cplusplus
extern "C"{
#endif
    void drawLine(int x1, int y1, int x2, int y2);
    void twiddleBits(unsigned char bits);
    void simulate(int iterations);

#ifdef _cplusplus
}
#endif
  • 静态初始化

如果程序中有c++的静态对象,建议使用c++ main函数。

  • 动态内存分配

new delete    和 malloc free

  • 数据结构的兼容性
发布了44 篇原创文章 · 获赞 5 · 访问量 1391

猜你喜欢

转载自blog.csdn.net/qq_33776188/article/details/104770740
今日推荐