1

列挙型を記述する classdef .m ファイルを生成できることはわかっていますが、これにより多数のファイルが生成され、非常に面倒になります。私が探しているのは、ファイルを生成せずにこれを「メモリ内」で行う方法です。mexCallMatlab または mexEval 関数を使用して Matlab で単純な変数を作成できることはわかっていますが、これらの関数では classdef が機能しないようです。

4

1 に答える 1

2

containers.Map基本的な列挙型ほど優雅ではありませんが、それがおそらくあなたの最善の策だと思います。ドキュメントの例:

keySet =   {'Jan', 'Feb', 'Mar', 'Apr'};
valueSet = [327.2, 368.2, 197.6, 178.4];
mapObj = containers.Map(keySet,valueSet)

mexCallMatlabor mexEval-see mxGetPropertyand などmxIsClassを使用するのではなく、オブジェクトを mex コードに渡すこともできますRandStreamオブジェクトに対してこれを成功させました。

于 2013-07-18T00:48:37.023 に答える