一.matlab与vc混编 

1.通过mcc将matlab的m文件转化为cpp,c文件或dll供vc调用: 

   这方面的实现推荐精华区Zosco和ljw总结的方法(x-6-1-4-3-1和2) 

   vc的设置请参看精华区x-6-1-4-3-5,通过这种设置可以调用c math library和c++ 

   math library,C++ mathlib的pdf在精华区x-6-1-10里 

2.通过matlab的combuilder将m文件做成com组件,供vc调用 

   参看精华区x-6-1-5 

3.通过matcom: 

   这个mathworks公司已经不在出新版本了,而且他的功能可能用第1和第2种方法代替 

   推荐使用前两种方式,matcom的使用精华区有一部分,从x-6-1-4下找

二.matlab与vb混编 

1.mathworks公司专为vb开发了一个com组件:matrixvb,里面有大量的数学函数. 

   这个组件需要另装,请在安装盘上或网上下载,注册码参看精华区x-6-1-3-8 

   装好这个组件后,他自带了两个pdf文件,用法及其能用的函数全在上面,推荐阅读 

   这两个pdf文件,精华区的位置是x-6-1-4-6 

2.通过matlab的combuilder将m文件做成com组件,供vb调用 

   参看精华区x-6-1-5

三.matlab与.net混编 

   在6.1版本以前一直没有这方面的讨论,用mcc编成dll或cpp,c文件应该可以,由于 

   .net调用com组件很方便,推荐使用通过matlab的combuilder将m文件做成com组件,供 

   .net调用,参看精华区x-6-1-5

四.试试通过matlab的combuilder做成com组件的方式实现混编,这也是mathworks公司 

推荐的方法,他不受语言和编译器的局限,相信高版本的matlab将在这方面有更大的改进 

这方面的介绍参看精华区x-6-1-5

五.其他的语言或编译器与matlab混编 

    精华区x-6-1-4里有一些相关的介绍,不全,还请用过的大侠总结这方面的内容。 

如果此编译器能调用com组件,那么也能通过matlab的combuilder将m文件做成com组件, 

供他们调用的方法

六.matlab调用外部dll(动态链接库等) 

参看精华区x-6-1-4-9

七.混编的一些常见问题FAQ 

1.mcc编译m文件出现这样的错误提示(例): 

Error: File "psf3" is a script M-file and cannot be compiled with the 

current Compiler. 

matlab complier不能编译script M-file,请将script M-file转成function m-file 

最简单的一个转法是:如果你的m文件叫a.m,在开头加上一句: function a 

推荐精华区x-6-1-4-12文章 

2.mxArray,mwArray转double或其他的类型 

参看精华区x-6-1-4-3-7和8 

3.在vc下调用toolbox中的有些函数会出现问题 

参看精华区x-6-1-4-3-9,这种问题还没有很好的解决方法 

4.lib /def:libmmfile.def /out:libmmfile.lib /machine:ix86是什么意思? 

这是调用VC的编译器lib.exe,从def文件导出lib文件,以实现对dll的调用 

这是dos下的命令行。matlab的高版本已经不需要这么用了,它的lib文件全在 

<matlabroot>/extern/lib/win32里,根据各个编译器的不同,此文件夹里还有分类的 

文件夹。 

5.我在Vc中选择新建一个matlab工程,可是最后一步确定的时候总是弹出一个窗口说 

MSDEV.EXE应用程序错误."0x528aa3003指令” 

引用的“0x52880000"内存.该内存不能为”written“? 

这种情况是matlab的addin不能用,没有太好的解决方法,所以只能改用mcc 

来代替addin了 

6.matlab下生成的exe文件,怎么拿到没有matlab的机器上运行? 

参看精华区x-6-1-8

本文转自博客园知识天地的博客,原文链接:matlab混合编程向导(vc,vb,.net...),如需转载请自行联系原博主。


matlab混合编程向导(vc,vb,.net...)的更多相关文章

  1. VC 与Matlab混合编程之引擎操作详解

    Visual C++ 是当前主流的应用程序开发环境之一,开发环境强大,开发的程序执行速度快.但在科学计算方面函数库显得不够丰富.读取.显示数据图形不方便. Matlab 是一款将数值分析.矩阵计算.信 ...

  2. C++和MATLAB混合编程求解多项式系数(矩阵相除)

    摘要:MATLAB对于矩阵处理是非常高效的,而C++对于矩阵操作是非常麻烦的,因而可以采用C++与MATLAB混合编程求解矩阵问题. 主要思路就是,在MATLAB中编写函数脚本并使用C++编译为dll ...

  3. C++和MATLAB混合编程-DLL

    先小话一下DLL,DLL是动态链接库,是源代码编译后的二进制库文件和程序接口,和静态链接库不同的是,程序在编译时并不链接动态链接库的执行体,而是在文件中保留一个调用标记,在程序运行时才将动态链接库文件 ...

  4. java matlab混合编程之返回值Struct类型

    java matlab混合编程的时候当返回值是Struct类型(matlab中的返回类型)如何来取得(java中)其值? 上网找,看到这个网页:http://www.mathworks.cn/cn/h ...

  5. WPF(C#)与MATLAB混合编程

    WPF(C#)与MATLAB混合编程 WPF可以为开发者提供便捷地构建用户交互界面的解决方法,而matlab则在科学计算方面有着无与伦比的优势,因此在一些需要将科学算法转换为应用软件的项目中,需要应用 ...

  6. VS/Qt C++和Matlab混合编程

    最近两天在搞C++和Matlab混合编程,这个中间过程真是让人心酸啊,最后还是搞定成功!现在把这个过程记录一下. 首先自己的电脑本来就安装着matlab2013b,按着网上的说法首先需要输入!mcc, ...

  7. Matlab混合编程

    Matlab混合编程 混合编程目的 在Matlab中采用混合编程目的主要包括 利用已有的函数库,避免重复工作 加速计算,特别是减少循环所用时间 利用GPU等进行异构编程 混合编程方法-mex函数 目前 ...

  8. C#Matlab混合编程类 初始化问题解决方法

    ************** 异常文本 ************** System.TypeInitializationException: “myPlus.matClass”的类型初始值设定项引发异 ...

  9. 国内第一部C#.Net调用Matlab混合编程视频教程

       本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新 Matlab和C#混合编程文章目录:[目录]Matlab和C#混合编程文章目录 一.视频说明 2014年的5.1,我将这套视频教 ...

随机推荐

  1. MySQL数据库三

    MySQL数据库三 多表查询: 有条件的内连接 将两张表根据相同的id连接起来 select * from info join details on info.id = details.id sele ...

  2. 1、jmeter语言设置、版本颜色

  3. Java编程最差实践常见问题详细说明(2)转

    Java编程最差实践常见问题详细说明(2)转 2012-12-13 13:57:20|  分类: JAVA |  标签:java  |举报|字号 订阅     反射使用不当  错误的写法: Java代 ...

  4. AtomicInteger的并发处理

    AtomicInteger的并发处理 博客分类: Effective Java   JDK1.5之后的java.util.concurrent.atomic包里,多了一批原子处理类.主要用于在高并发环 ...

  5. JS 的事件基础、事件侦听与抛发、

    前言 JavaScript是一种事件驱动型语言.事件驱动是指JavaScript引擎并不是在看到代码之后就会立即执行,而是会在合适的时间才去执行.这个合适的时间是指当某个事件发生之后(例如一个输入框的 ...

  6. Python—一个简单搜索引擎索引库

    因为课业要求,搭建一个简单的搜索引擎,找了一些相关资料并进行了部分优化(坑有点多) 一.数据 数据是网络上爬取的旅游相关的攻略页面 这个是travels表,在索引中主要用到id和url两个字段. 页面 ...

  7. A Bug's Life POJ 2492

    D - A Bug's Life 二分图 并查集 BackgroundProfessor Hopper is researching the sexual behavior of a rare spe ...

  8. vue2.x学习笔记(十六)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12616543.html. 组件中的插槽 在2.6.0的版本中,vue为具名插槽和作用域插槽引入了一个新的统一的语法 ...

  9. 详解 JDK8 新增的日期时间类

    JDK8 新增的日期时间类 在本人之前的博文<处理时间的类 -- System类.Date类 .SimpleDateFormat类 与 Calendar类>中,讲到过表示时间的类,有三类: ...

  10. [YII2] COOKIE的操作使用

    PHPcookie的设置 setcookie('username',$data['username'],time()+3600*24*7); YII2cookie的设置 $cookies = Yii: ...