gpt4 book ai didi

c++ - 如何为每个派生类存储一个可以从基类访问的魔数(Magic Number)?

转载 作者:行者123 更新时间:2023-11-30 01:30:26 25 4
gpt4 key购买 nike

class User {
public:
int v() {
return min_pass_len;
}
static const int min_pass_len = 10;
};
class AdminUser : public User {
public:
int w() {
return min_pass_len;
}

static const int min_pass_len = 42;
};

然后

int main() {
AdminUser a;
std::cout << a.v() << " why? " << a.w() << std::endl;
return 0;
}

我能以某种方式避免额外的方法调用吗?我也对其他解决方案、最佳实践感兴趣。谢谢!

最佳答案

只需使用返回不同数字的虚方法,跳过静态变量。

class User {
public:
virtual int v() {
return 10;
}
};

class AdminUser : public User {
public:
virtual int v() {
return 42;
}
};

关于c++ - 如何为每个派生类存储一个可以从基类访问的魔数(Magic Number)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4481285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com