【发布时间】:2014-02-10 13:25:50
【问题描述】:
下面是我的测试代码,我想它会输出“Der:12”,但结果是“Der:11”,谁能告诉我为什么输出这个,默认的参数存储在哪里?
#include <stdio.h>
class Base{
public:
virtual void show(int i = 11)
{
printf("Base:%d\n", i);
}
};
class Der : public Base{
public:
virtual void show(int i = 12)
{
printf("Der:%d\n", i);
}
};
int main()
{
Base *p = new Der();
p->show();
return 0;
}
【问题讨论】:
标签: c++ class default-value