C++ Nim FFI:使用现有类型包装C++;类型

C++ Nim FFI:使用现有类型包装C++;类型,c++,c,ffi,nim-lang,C++,C,Ffi,Nim Lang,我正在组装一个Nim包装纸,以供使用 Box2D有自己的数学向量类。如果我在原始C++中使用了Box 2D,我会使用这个类。简单 但是Nim在模块的类型中已经有了这样的功能 我希望我的包装器的接口使用内置的Vector2d类型,这样这个包装器的用户就不必在精神上处理两种不同的向量类型。这需要以某种方式使用Vector2d作为b2Vec2的Nim接口我该怎么做? 注意事项: b2Vec2和Vector2d都只由两个32位的floats组成

我正在组装一个Nim包装纸,以供使用

Box2D有自己的数学向量类。如果我在原始C++中使用了Box 2D,我会使用这个类。简单

但是Nim在模块的类型中已经有了这样的功能

我希望我的包装器的接口使用内置的
Vector2d
类型,这样这个包装器的用户就不必在精神上处理两种不同的向量类型。这需要以某种方式使用
Vector2d
作为
b2Vec2
的Nim接口我该怎么做?

注意事项:

  • b2Vec2
    Vector2d
    都只由两个32位的
    float
    s组成<我错了。Nim
    float
    s为64位。
  • Vector2d
    是Nim标准库的一部分,所以我不能修改它的定义
  • 如果有必要,我将为
    b2Vec2
    创建一个包装器,但我希望避免这样做,而且我绝对不希望用户看到它

实际上,看起来我做不到,至少在
basic2d.Vector2d
b2Vec2
之间不行。前者由两个64位浮点组成,后者由两个32位浮点组成