由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - C++能否重定义函数?
相关主题
could anybody please tell me what " while(cin) {...}" means?当某个函数被调用的时候,需要定义一个宏
用STL map的时候怎么自己定义大小比较的关系C++:如何计算一个类实例化了多少次?
如何在程序中判断该电脑是否在公司局域网内? (转载)C++ 什么时候用 "new" ?
how to reverse a HUGE list?再一个问题c++
cin.clear() 怎么用问一个C++ String的初始化问题
Re: L 电面 (转载)stl Compare为何需要重载()?
scala很牛啊C++怎样设置全局变量
这样的代码有啥意义么一个Quant Developer的C++面试题
相关话题的讨论汇总
话题: isgood话题: myclass话题: false话题: 定义话题: return
进入Programming版参与讨论
1 (共1页)
b***i
发帖数: 3043
1
有这样一个类,定义
MyClass.h
class MyClass{
public:
bool IsGood();
};
MyClass.cpp没有实现,而是在内容都很类似的多个项目中分别实现
MyProj1.cpp, MyProj2.cpp等,分别编译成exe文件。要求1-9里面IsGood()返回false,
但是我不想每个都改,想集中实现。每个项目都知道自己的名字后缀(1,2,...)
其中MyProj10里面要定义
MyClass::IsGood(){
return true;
}
而MyProj1里面
MyClass::IsGood(){
return false;
}
是可以的,从10开始我要重写IsGood的内容,会比较复杂。而之前的要默认false。但
是我觉得这样麻烦,不想改1-9,那怎么做呢?假设已经很多类了,不太想继承。当然
继承可以做。
一个想法:
if (suffix > 9)
return IsGood();//此时项目是>9的,有这个函数
else
return false;//对于<10的项目,IsGood()没有定义,可以编译吗?
这样,
s*****V
发帖数: 21731
2
不懂,你这些class 难道共享 header file?
l*********o
发帖数: 3091
3
典型的abstract class用做interface。

【在 b***i 的大作中提到】
: 有这样一个类,定义
: MyClass.h
: class MyClass{
: public:
: bool IsGood();
: };
: MyClass.cpp没有实现,而是在内容都很类似的多个项目中分别实现
: MyProj1.cpp, MyProj2.cpp等,分别编译成exe文件。要求1-9里面IsGood()返回false,
: 但是我不想每个都改,想集中实现。每个项目都知道自己的名字后缀(1,2,...)
: 其中MyProj10里面要定义

g****y
发帖数: 2810
4
对呀,继承不就行了吗,再写一个factory

【在 l*********o 的大作中提到】
: 典型的abstract class用做interface。
1 (共1页)
进入Programming版参与讨论
相关主题
问个copy constructor的问题cin.clear() 怎么用
怎么隐藏c++template代码?只提供lib 不提供头文件Re: L 电面 (转载)
C++ operator = overloading用copy & swap有啥优点scala很牛啊
C++糟粕和需要避免的。这样的代码有啥意义么
could anybody please tell me what " while(cin) {...}" means?当某个函数被调用的时候,需要定义一个宏
用STL map的时候怎么自己定义大小比较的关系C++:如何计算一个类实例化了多少次?
如何在程序中判断该电脑是否在公司局域网内? (转载)C++ 什么时候用 "new" ?
how to reverse a HUGE list?再一个问题c++
相关话题的讨论汇总
话题: isgood话题: myclass话题: false话题: 定义话题: return