5
返回static
成员变量的成员函数是否也应该是static
?返回静态变量的成员函数
例如:
struct T {
static int i;
static int getNumber() {
return i;
}
};
应该getNumber
是static
与否?
返回static
成员变量的成员函数是否也应该是static
?返回静态变量的成员函数
例如:
struct T {
static int i;
static int getNumber() {
return i;
}
};
应该getNumber
是static
与否?
通常,是的。
如果该变量没有任何每个实例的状态,那么函数在返回之前可能执行的每个实例的逻辑是什么?
这不是强制性的。你可以编写一个返回静态变量的成员函数。你不能相反(编写一个返回实例变量的静态函数)。
作为一个例子,你可能想要返回一个静态成员,想象一下这个类持有一个状态变量的情况,并且基于你将返回一个静态值的状态。不是说这是好的设计,但它不是完全不可思议的
@Ben,当我发表评论的时候,我正在考虑其他的东西(例如,记录实例计数的hokey方式)......反正 - 删除了狡猾的评论... – Nim
@Nim:我想知道是否有人可能会提出这样的事情。你不会生气的。但是,你很可能不想在一个简单的吸气器中做到这一点。 –