我正在使用Boost Python爲C++中的某些類提供python接口。 我發現這個局面,我不知道如何解決:幾個具有不同簽名的虛擬成員函數
我有了這個成員函數的類:
virtual void visit(const ReportClass r) = 0;
virtual void visit(const unsigned int category) = 0;
virtual void visit(const char* type) = 0;
virtual void visit(const char* name, const unsigned int id, const char &value) = 0;
virtual void visit(const char* name, const unsigned int id, const unsigned short &value) = 0;
virtual void visit(const char* name, const unsigned int id, const unsigned int &value) = 0;
virtual void visit(const char* name, const unsigned int id, const MaskedAddr &value) = 0;
virtual void visit(const char* name, const unsigned int id, const unsigned long long &value) = 0;
我有點失去了對如何實現python- boost部分,我已經看到如何進行虛函數和重載函數,但我不知道如何將兩者結合起來。
順便說一下,我看到的是一個虛函數返回一個int(例如)應實施這樣的例子:
int f()
{
return this->get_override("f")();
}
在我的情況下,他們不返回任何我想我應該以這種方式實施:
void f()
{
this->get_override("f")();
}
這是正確的嗎?
在此先感謝
** **亂收費的功能呢?那是什麼? –
對不起,超載.... – RaistlinMolina
您的立場正確。 –