f********a 发帖数: 1109 | 1 【 以下文字转载自 JobHunting 讨论区 】
发信人: fololunsia (我心飞扬), 信区: JobHunting
标 题: 【讨论】问一道很简单的C++题。。。。
发信站: BBS 未名空间站 (Mon May 28 23:06:47 2007)
下面两个程序,为什么EX1可以编译,EX2不可以?
======EX 1=======
class Base{
public:
void foo() const{ }
};
class Derived: public Base{
public:
int foo() const{ return 1; }
};
======EX 2======
class Base{
public:
virtual void foo() const{ }
};
class Derived: public Base{
public:
int foo() const{ return 1; }
}; | p****o 发帖数: 1340 | 2 two functions with only different return types can not be overloaded. in Ex2
, the foo in the base function is hidden by the derived one.
【在 f********a 的大作中提到】 : 【 以下文字转载自 JobHunting 讨论区 】 : 发信人: fololunsia (我心飞扬), 信区: JobHunting : 标 题: 【讨论】问一道很简单的C++题。。。。 : 发信站: BBS 未名空间站 (Mon May 28 23:06:47 2007) : 下面两个程序,为什么EX1可以编译,EX2不可以? : ======EX 1======= : class Base{ : public: : void foo() const{ } : };
|
|