有什麼方法可以在C++中輕鬆實現代理類模式?不使用AspectC++或其他繁重的工具,只使用內置的宏或模板。C++代理類
解釋我想要什麼:
class base_class
{
public:
virtual void method_one() { ... }
virtual void method_two() { ... }
}
class class_proxy : base_class
{
protected:
void before_any_method_call() { do stuff };
void after_any_method_call(std::exception* ex) { do stuff }
}
下面是這種情況。我想代理的類(base_class)可以進行遠程調用,但是當網絡關閉時,它會拋出從std :: exception派生的傳輸異常。 base_class有很多方法,我想捕獲傳輸異常,以空的結果響應,並在下一次方法調用之前重新建立連接。
如果您給我們一個想法,您想要使用它,我們會更容易爲您提供相關建議。 – 2011-04-19 15:35:39