小编Rob*_*rtL的帖子

命名空间+函数与类上的静态方法

假设我已经或即将编写一组相关函数.假设他们与数学有关.在组织上,我应该:

  1. 编写这些函数并将它们放在我的MyMath命名空间中并通过它们引用它们MyMath::XYZ()
  2. 创建一个名为的类MyMath,并将这些方法设为静态,并引用类似的方法MyMath::XYZ()

为什么我会选择一个作为组织我的软件的方法?

c++ static-methods namespaces

268
推荐指数
5
解决办法
6万
查看次数

宏禁止类复制和分配.谷歌-vs- Qt

要禁止复制或分配类,通常的做法是将复制构造函数和赋值运算符设为私有.谷歌和Qt都有宏,使这个变得简单明了.这些宏是:

谷歌:

#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
  TypeName(const TypeName&);   \
  void operator=(const TypeName&) 
Run Code Online (Sandbox Code Playgroud)

Qt的:

#define Q_DISABLE_COPY(Class) \
  Class(const Class &); \     
  Class &operator=(const Class &);
Run Code Online (Sandbox Code Playgroud)

问题:为什么两个赋值运算符的签名不同?好像Qt版本是正确的.两者之间有什么实际区别?

c++

35
推荐指数
4
解决办法
2万
查看次数

标签 统计

c++ ×2

namespaces ×1

static-methods ×1