亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

竊聽作為模板函數的類成員函數

竊聽作為模板函數的類成員函數

白衣非少年 2021-03-29 16:21:05
該問題基于以下問題:如何使用swig實例化模板類的模板方法?。但是,與該問題相比,我嘗試包裝的代碼略有不同:class MyClass {  public:    template <class T>     void f1(const string& firstArg, const T& value);};該MyClass的是一個普通的C ++類,一個模板函數F1。嘗試包裝MyClass :: f1 :,即Swig .i文件 %template(f1String)    MyClass::f1<std::string>; 通過以上操作,Python客戶端可以執行o = MyClassstr1 = "A String"o.f1String("", str1)此接口要求Python客戶端了解所有不同的f1函數名,每個函數名根據類型而有所不同。不太干凈。可以通過重載,在接口文件中擴展來獲得更干凈的接口,例如%extend MyClass {   void f1(const string& s, const string& s1){          $self->f1(s, s1);   }   void f1(const string& s, const int& anInt){          $self->f1(s, anInt);   }}這允許這樣的客戶端代碼:o = MyClassstr1 = "A String"anInt = 34o.f1("", str1)o.f1("", anInt)問題是,有沒有辦法使用Swig在不擴展的情況下(通過擴展)獲取以上接口?
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 177 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號