小编jee*_*t.m的帖子

Cython/Python/C++ - 继承:将派生类作为参数传递给期望基类的函数

我正在使用Cython来包装一组C++类,允许它们使用Python接口.示例代码如下:

BaseClass.h:

#ifndef __BaseClass__
#define __BaseClass__
#include <stdio.h>
#include <stdlib.h>
#include <string>
using namespace std;
class BaseClass
{
    public:
        BaseClass(){};
        virtual ~BaseClass(){};
        virtual void SetName(string name){printf("in base set name\n");}
        virtual float Evaluate(float time){printf("in base Evaluate\n");return 0;}
        virtual bool DataExists(){printf("in base data exists\n");return false;}
};
#endif /* defined(__BaseClass__) */
Run Code Online (Sandbox Code Playgroud)

DerivedClass.h:

#ifndef __DerivedClass__
#define __DerivedClass__

#include "BaseClass.h"

class DerivedClass:public BaseClass
{
    public:
        DerivedClass(){};
        virtual ~DerivedClass(){};
        virtual float Evaluate(float time){printf("in derived Evaluate\n");return 1;}
        virtual bool DataExists(){printf("in derived data exists\n");return true;}
        virtual void MyFunction(){printf("in …
Run Code Online (Sandbox Code Playgroud)

c++ python inheritance cython

9
推荐指数
1
解决办法
3681
查看次数

标签 统计

c++ ×1

cython ×1

inheritance ×1

python ×1