一.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. 构建LNMP

                                                                             构建LNMP 案例1:部署LNMP环境 案例2:构建L ...

  2. 安装一个KVM服务器

                                                              安装一个KVM服务器     案例1:安装一个KVM服务器 案例2:KVM平台构建及 ...

  3. 一个关于HttpClient的轮子

    由于本文较长,需要耐住性子阅读,另外本文中涉及到的知识点较多,想要深入学习某知识点可以参考其他博客或官网资料.本文也非源码分析文章,示例中的源码大多是伪代码和剪辑过的代码示例,由于该轮子为公司内部使用 ...

  4. pm2 开机启动egg项目

    1.在服务器上安装PM2 npm install pm2 -g 2.对PM2进行更新 pm2 update 3.进入服务器中egg项目更目录,并新建server.js文件,并在其中写入以下代码 con ...

  5. 使用 python 进行身份证号校验

    使用 python 代码进行身份证号校验 先说,还有很多可以优化的地方. 1.比如加入15位身份证号的校验,嗯哼,15位的好像没有校验,那就只能提取个出生年月日啥的了. 2.比如判断加入地址数据库,增 ...

  6. 计算机网络协议,PPP协议分析

    一.基本特点 1.PPP协议是计算机网络体系中第二层(数据链路层)的协议 2.PPP帧格式是以HDLC帧格式为基础,做了很少的改动(区别:PPP是面向字符的,而HDLC是面向位的) 3.PPP协议使用 ...

  7. istream_iterator && istream_iteratorbuf

    注意 读字符时, std::istream_iterator 默认跳过空白符(除非用 std::noskipws 或等价物禁用,而 std::istreambuf_iterator 不跳过.另外, s ...

  8. 【python实现卷积神经网络】激活层实现

    代码来源:https://github.com/eriklindernoren/ML-From-Scratch 卷积神经网络中卷积层Conv2D(带stride.padding)的具体实现:https ...

  9. AJ学IOS(29)UI之Quartz2D自定义下载控件_画各种图形

    AJ分享,必须精品 效果 自定义控件过程 主要过程在上一篇里有介绍了,这里主要介绍下代码实现 先做好要放的view 然后实现呢主要就是四步: 1:获取上下文 2:拼接路径 3:把路径添加到上下文. 4 ...

  10. 今天整理了几个在使用python进行数据分析的常用小技巧、命令。

    提高Python数据分析速度的八个小技巧 01 使用Pandas Profiling预览数据 这个神器我们在之前的文章中就详细讲过,使用Pandas Profiling可以在进行数据分析之前对数据进行 ...