由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 请教C++类设计问题
相关主题
C++ template questionconst int foo()啥意思?
看到那么多Java黑你们有没有一种感觉,其实big data
阿里系统崩溃,没人讨论下应该给魏大师发10个图灵奖。
问个弱智问题,有网站用nosql做primary db么?古德霸啊古德霸,不打你脸是不行了
问个autoconf的问题qxc,我接招了,你给的要求太弱的,给你加强了
Java真的不能disable GC么?其实说来说去都是数据库的问题
Goodbug再来赌一把1M/s计数器如何?Java实现我搞定了好虫数据库的方案
C++设计疑问对非程序员而言,好虫的架构很有问题
相关话题的讨论汇总
话题: student话题: disabled话题: class话题: 学生
进入Programming版参与讨论
1 (共1页)
g*********s
发帖数: 1782
1
设计规范如下:
设计学生类,其中残疾学生需要一些附加信息。学生对象全部放在map
allStudents里。
因为希望尽量省内存,当前的实现:
class Student{
...
bool disabled;
public:
Student::Student():disabled(false) {}
bool isDisabled() { return disabled; }
};
class DisabledStu: public Student {
...
public:
DisabledStu: disabled(true) {}
};
但是觉得这个打印学生信息的函数实现比较别扭。这里面的类型转换是不是没有必要啊
?另外类结构是不是设虚基类Student,然后用NormalStudent和DisableStudent分别继
承更清晰?
void printStuInfo(int index){
it = allStudents.find(index);
if (it!=allStudents.end()) {
Student *st
y****e
发帖数: 23939
2
为什么不用一个virtual printInfo() function, 让class自己take care打印的问题。
用base class的pointer call这个打印函数就可以了,那才是polymorphism吧。
p**********g
发帖数: 187
3
stupid design. just add setdisabled() and eliminate the derived class.
g*********s
发帖数: 1782
4
Acid-tongued words won't show your smartness but low taste.

【在 p**********g 的大作中提到】
: stupid design. just add setdisabled() and eliminate the derived class.
P********e
发帖数: 2610
5
that's what I feel

【在 g*********s 的大作中提到】
: Acid-tongued words won't show your smartness but low taste.
1 (共1页)
进入Programming版参与讨论
相关主题
对非程序员而言,好虫的架构很有问题问个autoconf的问题
NoSql is not enough, here comes NewSqlJava真的不能disable GC么?
这坑实在没劲,都是些嘴炮王Goodbug再来赌一把1M/s计数器如何?Java实现
学术贴,1M/s ACID Message QueueC++设计疑问
C++ template questionconst int foo()啥意思?
看到那么多Java黑你们有没有一种感觉,其实big data
阿里系统崩溃,没人讨论下应该给魏大师发10个图灵奖。
问个弱智问题,有网站用nosql做primary db么?古德霸啊古德霸,不打你脸是不行了
相关话题的讨论汇总
话题: student话题: disabled话题: class话题: 学生