你应该在 .h 文件中声明类的 getters/setters 然后在 .cpp 中定义它们还是在 .h 文件中都做。你喜欢哪种风格,为什么?我个人喜欢后者,其中所有方法都在 .h 中,并且只有与 .cpp 中的 setters/getters 不同的逻辑相关的方法。
最佳答案
对我来说,这取决于谁将使用 .h 文件。如果它是一个主要位于模块内部的文件,那么我倾向于将微小的方法放在标题中。如果它是提供更固定 API 的更外部头文件,那么我会将所有内容都放在 .cpp 文件中。在这种情况下,我会经常使用 PIMPL Idiom一个完整的编译防火墙。
我看到将它们放在标题中的权衡是:
- 减少打字
- 编译器的内联更容易(尽管编译器有时可以在多个翻译单元之间进行内联。)
- 更多编译依赖
关于c++ - C++中获取/设置方法变量的方法声明的编程风格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/476461/