(C ++)AspectC ++拦截派生类的方法

时间:2013-03-04 17:32:24

标签: c++ intercept aspect

这可能是一个愚蠢的问题,但在搜索了几个小时后我找不到答案。

使用AspectC ++,我们可以定义切入点,它们表示一旦匹配就被拦截的东西。例如,我可以做

pointcut pc() = call("% Base::%(...)");

以便使用切入点advice的任何pc都会拦截对类Base的某些方法的任何调用。即使稍后创建了Sub的子类Base,这也会起作用:pc也会拦截对Sub方法的调用。现在,我想要的是拦截Sub的方法,即Sub中不存在的Base方法。我们如何使pc()拦截最终创建的Base的任何子类的任何方法,而不是Base本身的方法?

0 个答案:

没有答案