这应该是一个快速的过程。有没有可能这样做:
[Callback(funtionY)]
void functionX()
{
}
void functionY()
{
}这样当functionX被调用时,functionY也会被自动调用?我问这个问题的原因是因为我要实现一个基于XNA的小型游戏引擎的网络功能,我想将函数标记为同步,以标记当一个函数被调用时,它应该在所有客户端上被调用。
谢谢。
发布于 2009-03-09 13:07:48
听起来你想要Aspect-Oriented Programming。
我以前就用过PostSharp来做这件事,而且效果很好。
发布于 2009-03-09 13:07:52
使用PostSharp可能很容易做到这一点,但一般来说:不能;您必须显式调用它。
发布于 2009-03-09 13:10:18
可以,只需将它们创建为代理即可。
Action foo = functionX;
foo += functionY;
foo(); // both called更新: Jon (谢谢)指出,调用顺序实际上是确定的。然而,我永远不会依赖这一点。请参见注释。
https://stackoverflow.com/questions/626139
复制相似问题