小编Gre*_*reg的帖子

用C++覆盖Base的重载函数

可能重复:
C++重载决议

我遇到了一个问题,在我的类重写了它的基类的函数后,所有重载的函数版本都被隐藏了.这是设计还是我做错了什么?

防爆.

class foo
{
  public:
    foo(void);
    ~foo(void);
    virtual void a(int);
    virtual void a(double);
};

class bar : public foo 
{
  public:
    bar(void);
    ~bar(void);
    void a(int);
};
Run Code Online (Sandbox Code Playgroud)

然后,下面会给出一个编译错误,说明条中没有(双)函数.

main() 
{
  double i = 0.0;
  bar b;
  b.a(i);
}
Run Code Online (Sandbox Code Playgroud)

c++ polymorphism inheritance overriding

47
推荐指数
3
解决办法
3万
查看次数

在C++的每个函数调用类之前运行代码

我希望在每个函数调用类之前运行一些代码(可能是一个函数)以及从该类继承的类的所有函数.我想在没有实际编辑每个功能的情况下这样做,这样的事情甚至可能吗?

我会满足于将一个函数称为每个函数调用的第一条指令,而不是之前调用它.

c++ aop

7
推荐指数
1
解决办法
2560
查看次数

标签 统计

c++ ×2

aop ×1

inheritance ×1

overriding ×1

polymorphism ×1