小编Jav*_*ier的帖子

Pybind11 默认参数 numpy 数组或 None

我正在包装一些 C++ 代码以从 Python 中使用它。我想调用一个带有参数的 C++ 函数,该参数可以采用另一个输入变量的None值或numpy.array相同大小的值。这是例子:

import example

# Let I a numpy array containing a 2D or 3D image
M = I > 0
# Calling the C++ function with no mask
example.fit(I, k, mask=None)
# Calling the C++ function with mask as a Numpy array of the same size of I
example.fit(I, k, mask=M)
Run Code Online (Sandbox Code Playgroud)

如何使用 pybind11 在 C++ 中进行编码?我有以下函数签名和代码:

void fit(const py::array_t<float, py::array::c_style | py::array::forcecast> &input, 
         int k,
         const py::array_t<bool, py::array::c_style | py::array::forcecast> …
Run Code Online (Sandbox Code Playgroud)

c++ python binding numpy pybind11

3
推荐指数
1
解决办法
3076
查看次数

无法实例化具有多个继承的抽象类C ++

C2259实例化从其他类继承的类时出现编译器错误,这些类具有抽象方法。

继承方案有点怪异和不透明,但由于问题的某些限制,我需要以这种方式进行操作。

继承方案如下:

class A
{
public:
    enum Animal { CAT, DOG };
    enum Color { RED, GREEN };
    enum Food { MEAT, FISH };

protected:
    virtual Animal animal() const = 0;
    virtual Color color() const = 0;
    virtual Food food() const = 0;
};

class B: public A
{
Animal animal() const { return CAT; }
};

class C: public A
{
Color color() const { return GREEN; }
};

class D: public A
{
Food food() …
Run Code Online (Sandbox Code Playgroud)

c++ inheritance abstract-class virtual-functions multiple-inheritance

-1
推荐指数
1
解决办法
104
查看次数