matlab2c使用c++实现matlab函数系列教程-cat函数

版权声明:本文为博主原创文章,转载请注明来源。开发合作联系luanpenguestc@sina.com https://blog.csdn.net/luanpeng825485697/article/details/77598519

全栈工程师开发手册 (作者:栾鹏)

matlab2c动态链接库下载
matlab库函数大全
matlab2c基础教程
matlab2c开发全解教程

matlab2c调用方法:

1、下载动态链接库
2、将Matlab2c.dll拷贝到exe同目录下
3、将Matlab2c.h、Matlab2c.lib放到项目头文件目录下
4、在cpp文件中引入下面的代码

#include "Matlab2c.h"
#pragma comment(lib,"Matlab2c.lib")  
using namespace Matlab2c;

matlab中cat函数简介

1、cat函数: 按dim来联结A和B两个数组

2、用法说明

 C = cat(dim, A, B),dim=1,矩阵横向合并等价于[a,b],dim=2矩阵纵向合并等价于[a;b]

cat的c++源码实现

矩阵合并
目前支持两维合并,dim=1,矩阵横向合并等价于[a,b],dim=2矩阵纵向合并等价于[a;b]

Matrix Matlab2c::cat(int dim,Matrix& a,Matrix& b){
	Matrix p(a);
	switch (dim)
	{
	case 1:
		p.append_bottom(b);
		return p;
	case 2:
		p.append_right(b);
		return p;
	default:
		p.append_bottom(b);
		return p;
	}
}
CMatrix Matlab2c::cat(int dim,CMatrix& a,CMatrix& b){
	CMatrix p(a);
	switch (dim)
	{
	case 1:
		p.append_bottom(b);
		return p;
	case 2:
		p.append_right(b);
		return p;
	default:
		p.append_bottom(b);
		return p;
	}
}

cat函数的使用测试

#include "Matlab2c.h"
#pragma comment(lib,"Matlab2c.lib")  
using namespace Matlab2c;


int main()
{
	double a[]={1,2,3,4,5,6};
	Matrix aa=Matrix(2,3,a);
	Matrix cc=Matlab2c::repmat(aa,2,3);
	cout<<cc.toString()<<endl;

	system("pause");
	return 0;
}

阅读更多

没有更多推荐了,返回首页