5
我想寫一個非常簡單的mex文件,讓我們來試試它的工作方式。我閱讀了大量材料,閱讀了更多內容,更讓我感到困惑。我需要這個進一步編寫一個與外部硬件交互的mex文件。請幫忙!在matlab中編寫一個非常基本的mex函數
// header file - printing.h //
#include<iostream>
class printing
{
public:
void name();
void age();
};
// cpp file - printing.cpp //
#include<iostream>
#include "mex.h"
#include "matrix.h"
#include "printing.h"
#include <string>
using namespace std;
void mexFunction(int nlhs, mxArray*plhs[],
int nrhs, const mxArray *prhs[])
{
printing p1;
p1.name();
p1.age();
}
void printing::name()
{
cout << "NAME" << endl;
}
void printing::age()
{
cout << "20" << endl;
}
// .m文件 - test.m //
sprintf ('WELCOME')
printing()
當我運行test.m文件,我想看看 歡迎 NAME 但是我只看到歡迎。我知道我沒有更新plhs []數組。但我想要做的是在mexFunction中執行一些東西。爲什麼cout在name()和age()中不能實現這個功能?
另外,我如何確認name()和age()被執行?
請注意,cout鏈接到系統的控制檯,並且Matlab有一個自己的「控制檯」,他們稱之爲「命令窗口」。這意味着你的cout輸出將不會在Matlab中看到。 – patrik