有没有区别
class C {
static int func();
};
和
class C {
int static func();
};
我正在尝试删除其他人代码库中的关键字static 。在我这样做之前,我想确保我理解第二个示例的含义。
[编辑] 删除static的原因:C 是一个没有成员变量且充满静态方法的“类”。我认为将“C”作为具有普通函数而不是类的命名空间更合适。
有没有区别
class C {
static int func();
};
和
class C {
int static func();
};
我正在尝试删除其他人代码库中的关键字static 。在我这样做之前,我想确保我理解第二个示例的含义。
[编辑] 删除static的原因:C 是一个没有成员变量且充满静态方法的“类”。我认为将“C”作为具有普通函数而不是类的命名空间更合适。
没有区别。static
关于函数声明适用于函数。指针不会隐式传递给该函数,因此如果不将对象显式传递给它,就无法访问该函数内部的非静态类成员
。this
要删除第static
一个,您应该知道并理解以这种方式设计的目的。如果不考虑这一点,您肯定会产生很大比例的代码气味。
是的,在第一种情况下,关键字static
在 type 之前int
,在第二种情况下,它们是相反的。但是,就像 C 和 C++ 中的许多东西一样,没有语义差异。因此,除了“化妆品”之外,没有任何区别。
我不确定您为什么要static
作为一般规则在类中删除 - 声明成员函数可能是有充分理由的static
。