作为C++的一个完整新手,我在MS教程发现了{A1}之后,创建了我的第一个动态链接库。

头文件如下所示:// MathFuncsDll.h

namespace MathFuncs

{

class MyMathFuncs

{

public:

// Returns a + b

static __declspec(dllexport) double Add(double a, double b);

// Returns a - b

static __declspec(dllexport) double Subtract(double a, double b);

// Returns a * b

static __declspec(dllexport) double Multiply(double a, double b);

// Returns a / b

// Throws DivideByZeroException if b is 0

static __declspec(dllexport) double Divide(double a, double b);

};

}

现在,我想把这个文件读入Python ctypes。我使用:

^{pr2}$

现在,我很难真正访问这些函数。我的直觉引导我去尝试a = ctypes.c_double(54)

b = ctypes.c_double(12)

summation = MyFuncs.Add(a,b)

返回错误AttributeError: function 'Add' not found

我的问题是函数嵌套在class MyMathFuncs中,而该函数也在namespace MathFuncs中?如何访问这些功能?在

以下是用于生成dll的.cpp文件的内容以供参考// MathFuncsDll.cpp

// compile with: /EHsc /LD

#include "MathFuncsDll.h"

#include

using namespace std;

namespace MathFuncs

{

double MyMathFuncs::Add(double a, double b)

{

return a + b;

}

double MyMathFuncs::Subtract(double a, double b)

{

return a - b;

}

double MyMathFuncs::Multiply(double a, double b)

{

return a * b;

}

double MyMathFuncs::Divide(double a, double b)

{

if (b == 0)

{

throw new invalid_argument("b cannot be zero!");

}

return a / b;

}

}

python创建类mymath_构建DLL(MyMathFuncs)以在Python Ctypes中使用相关推荐

  1. python创建类统计属性_轻松创建统计数据的Python包

    python创建类统计属性 介绍 (Introduction) Sometimes you may need a distribution figure for your slide or class ...

  2. 关于python创建类的深入理解

    背景 我们知道在python中一切皆为对象的概念,那我们们来看一段程序 class Foo(object):def __init__(self, name):self.name = namef = F ...

  3. Python 创建类的成员并访问

    类的成员: python 中类的成员是有实例方法和数据成员组成 1 创建实例方法并访问 创建实例方法,就是创类类的时候实例化方法,具体的如下 class People:def __init__(sel ...

  4. python创建类的实例方法-Python中动态创建类实例的方法

    简介 在Java中我们可以通过反射来根据类名创建类实例,那么在Python我们怎么实现类似功能呢? 其实在Python有一个builtin函数import,我们可以使用这个函数来在运行时动态加载一些模 ...

  5. python创建类的实例化_在C中实例化python类#

    IronPython类不是.NET类.它们是IronPython.Runtime.Types.pythotype的实例,后者是Python元类.这是因为Python类是动态的,并且支持在运行时添加和删 ...

  6. python嵌套类(内部类相互调用)_核心解密Python函数在(类与函数之间)和(类与类之间)互相调用...

    image.png 一.类与函数之间 首先来看一个函数间的调用 类方法: #实现类中函数之间互相调用 #下面一个学生的简单自我介绍为例子 __metaclass__=type #自由的.动态的修改/增 ...

  7. python 创建类_python 用type()创建类

    type()可以查看一个类型,也可以查看变量的类型 class Hello1(object): def hello(self, name = 'world'): print('Hello, %s' % ...

  8. python创建类和类方法

    创建一个类的三种方法: class Annimao():pass class Annimao(object):pass class Annimao:pass 三种类方法: 1.实例方法 class P ...

  9. python创建类的两个对象_Python为一个类创建多个对象

    分步教程 要读取文件内容,请使用io.open.如果任何名称有强调字符,请不要忘记指定文件编码.在with io.open('students.txt', mode="r", en ...

  10. python创建excel文件报错_[转]用Python读写Excel文件

    大部分Windows环境的开发人员都会选择Microsoft Excel API.实际上不仅仅是Python,几乎各种语言都有相应的方法使用它,因为核心的逻辑完全是由Microsft Excel自身提 ...

最新文章

  1. JAVA循环结构学校上机经常遇到的几题 笔记
  2. 10 款基于 jQuery 的切换效果插件推荐
  3. json-lib的字符串自动转换坑
  4. 双目视觉几何框架详解(玉米专栏8篇汇总)
  5. matlab st变换,ST转换(matlab代码)
  6. 2016年4月20日作业
  7. SAP License:结算金额大于可支配金额问题应对
  8. Bing Maps开发扩展三:Bing Maps中渲染ESRI SHP空间数据
  9. sql列转行逗号连接_SQL 拼接字符串 列转行 | 学步园
  10. Edge自带的数学求解器介绍
  11. 苹果电脑系统如何设置成中文
  12. 值得入手的键盘——Keychron K8 Pro
  13. Maven问题总结 - 3 - 技术改变生活商业成就梦想 - 51CTO技术博客
  14. cmake:add_library生成静态库和动态库
  15. 服务器系统排行榜,服务器操作系统排行榜
  16. mpu6050详细c语言程序,mpu6050详细C语言知识程序.doc
  17. 反驳生命的起点是rna_生命起源学说或将被改写?“天外来客”陨石给科学家带来新发现!...
  18. LLVM之父Chris Lattner:为什么我们要重建AI基础设施软件
  19. Xshell6软件分享
  20. 为什么要做特征归一化/标准化?

热门文章

  1. 前端复习笔记(二)——CSS
  2. LinkedHashMap内部实现
  3. AI 框架部署方案之模型转换
  4. leetcode之回文链表
  5. 数据绑定概述(MSDN)
  6. caffe安装编译问题-ImportError: No module named caffe
  7. zookeeper服务端
  8. C# 访问数据的时候报错 (拒绝了对对象 'XXXX' (数据库 'SHQY',架构 'dbo')的 SELECT 权限)...
  9. 西游记与面向对象编程
  10. 【从C到C++学习笔记】内敛函数/内敛函数与带参数宏的区别/新的类型转换运算符