zoukankan      html  css  js  c++  java
  • 将文件间的编译依存关系降至最低【EC++笔记】

    • 当 object references(引用)和 pointers(指针)可以做到时就避免直接使用实例对象。仅需一个类型的声明,你就可以定义到这个类型的 references 和 pointers。而定义一个类型的实例对象必须要存在这个类型的定义。
    • 只要你能做到,就用对 class declarations(类声明)的依赖替代对 class definitions(类定义)的依赖。注意在你声明一个使用一个 class 的函数时绝对不需要有这个 class definition,即使这个函数通过传值方式传递或返回这个 class
    • 为 declarations(声明)【专门声明是为了快速编译】和 definitions(定义)【为了能够实现功能】分别提供头文件。为了便于坚持上面的指导方针,头文件需要成对出现:一个用于 declarations(声明),另一个用于 definitions(定义)。当然,这些文件必须保持一致。如果一个 declaration(声明)在一个地方被改变了,它必须在两处都被改变。

    Things to Remember

    • 最小化编译依赖后面的一般想法是用对 declarations(声明)的依赖取代对 definitions(定义)的依赖。基于此想法的两个方法是 Handle classes【声明】  Interface classes【虚函数】。
    • 库头文件应该以完整并且 declaration-only(只有声明)的形式存在。无论是否包含 templates(模板)都适用于这一点。
  • 相关阅读:
    正则表达式的单行模式和多行模式
    js 正则匹配(去掉html标签)
    ES6中set和map的区别
    回调函数的使用场合
    javascript逻辑运算符“||”和“&&”
    [bzoj3210]花神的浇花集会
    [bzoj2438][中山市选2011]杀人游戏
    [bzoj2743][HEOI2012]采花
    [luoguP3729]曼哈顿计划EX
    [bzoj4850][Jsoi2016]灯塔
  • 原文地址:https://www.cnblogs.com/guyan/p/2502325.html
Copyright © 2011-2022 走看看