是否有可能效仿這樣的事情:如何聲明兩個函數將對方的簽名作爲參數?
typedef boost::function<void(A)> B;
typedef boost::function<void(B)> A;
主要目標是能夠寫出這樣的代碼(僞C++):
void a_(B b) {
// ...
b(a_);
}
void b_(A a) {
// ...
f(boost::bind(a, b_));
}
f(boost::bind(a_, b_));