coding-style - 单例和谷歌编码风格

标签 coding-style singleton

Google c++ 编码风格不允许非平凡的静态对象(并且出于某种原因),因此不允许单例。同时,单例确实代表了应用程序逻辑的现实。

那么实现单例功能的谷歌风格的正确方法是什么:
(a) 具有静态指针并在启动时将它们初始化为一个单独的步骤(例如,通过初始化器/制造器类的链表)
(b) 拥有对所有类似单例对象的引用的上下文,并通过每个方法传递它 (c) 有上下文成为每个类的成员
(d) 还有什么?

最佳答案

Google C++ Style Guide ”确实提到了“表示单例对象的类型(Registerer)”

您可以在 ronaflx/cpp-utility 中看到所述注册器的实现。使用“util/registerer.h ”作为函数指针 ( illustrated here ),以及 util/singleton.h对于经典单例。

OP 指向他们自己的项目 alex4747-pub/proper_singleton .

关于coding-style - 单例和谷歌编码风格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56257363/

相关文章:

c++ - 拥有一个类而不创建它的实例可以吗?

Git:在提交/推送之前通过过滤器运行?

c++ - 这是否可以赎回线程安全的双重检查锁定模式?

java - 为什么拥有静态嵌套类会导致在不在源代码中时添加第二个构造函数?

c# - 设计推荐 : Lazy init of objects in an array

java - 多元素枚举还是单例?

java - 如何更改 Eclipse 中的代码约定

php - 如何修复旧的编码风格 php 脚本

PHP:是否可以将数据库层实现为单例?代码里面

python - Python 的通用编码风格?