在C ++类中包装Rust结构

时间:2015-08-24 17:52:39

标签: rust

我想在C ++类中包装一个Rust结构。

锈:

#[repr(C)]
pub struct RustStruct {
  num: i32,
  // other members..
}

pub extern "C" fn update(rust_struct: *mut RustStruct) {
  (*rust_struct).num = 1i32;
}

extern "C" {
  void update(void*);
}

C ++:

class Wrapper {
  public:
    Wrapper();
    // ..

  private:
    void* rustStruct;
    // ..
};

Wrapper::Wrapper() {
  update(rustStruct); // crash
}

int main() {
  std::cout << "Testing..";
}

我理解为什么这不起作用。我的问题是:我怎样才能实现我基本上想要做的事情(在c ++类中包装一个rust结构)?

0 个答案:

没有答案