转换MATLAB类型到COM类型
服务器函数的参数和返回值的数据类型表示为自动化数据类型,这是由自动化协议定义的独立于语言的类型。例如,型
是定义为自动化类型的宽字符字符串类型,并且与Visual Basic®语言来存储字符串。任何com兼容的客户端都应该支持这些数据类型,尽管如何声明和操作金宝app这些类型的细节是特定于客户端的。
这个表格展示了MATLAB如何®转换数据从MATLAB到COM类型。
MATLAB类型 | 最近的COM类型 | 允许的类型 |
---|---|---|
处理 | VT_DISPATCH VT_UNKNOWN |
VT_DISPATCH VT_UNKNOWN |
特征向量 | VT_BSTR |
VT_LPWSTR VT_LPSTR VT_BSTR VT_FILETIME VT_ERROR VT_DECIMAL VT_CLSID VT_DATE |
int16 |
VT_I2 |
VT_I2 |
uint16 |
VT_UI2 |
VT_UI2 |
int32 |
VT_I4 |
VT_I4 VT_INT |
uint32 |
VT_UI4 |
VT_UI4 VT_UINT |
int64 |
VT_I8 |
VT_I8 |
uint64 |
VT_UI8 |
VT_UI8 |
单 |
VT_R4 |
VT_R4 |
双 |
VT_R8 |
VT_R8 VT_CY |
逻辑 |
VT_BOOL |
VT_BOOL |
字符 | VT_I1 |
VT_I1 VT_UI1 |
变量数据
变体
结构或稀疏数组以外的任何数据类型。(有关更多信息,请参见MATLAB基本类.)
当用作输入参数时,MATLAB处理变体
而且变体(
同样的方法。指针
)
如果传递一个空数组([]
)类型的双
, MATLAB创建一个变体(
设置为指针
)VT_EMPTY
.不支持传递任何其他数字类型的空数组。金宝app
MATLAB的论点 | 最近的COM类型 | 允许的类型 |
---|---|---|
变体 |
VT_VARIANT |
VT_VARIANT VT_USERDEFINED VT_ARRAY |
变体( |
VT_VARIANT |
VT_VARIANT |VT_BYREF |
SAFEARRAY数据
当COM方法标识一个SAFEARRAY
或SAFEARRAY
(指针),MATLAB等效为矩阵。
MATLAB的论点 | 最近的COM类型 | 允许的类型 |
---|---|---|
SAFEARRAY |
VT_SAFEARRAY |
VT_SAFEARRAY |
SAFEARRAY (指针) |
VT_SAFEARRAY |
VT_SAFEARRAY |VT_BYREF |
VT_DATE数据类型
通过VT_DATE
类型输入到Visual Basic程序,使用MATLAB类COM.date
.例如:
d = COM.date(2005,12,21,15,30,05);get(d)值:7.3267e+005字符串:'12/21/2005 3:30:05 PM'
使用现在
函数设置价值
属性转换为日期号:
d.Value =现在;
COM.date
接受相同的输入参数datenum
.
不支金宝app持的类型
MATLAB不支持这些COM类型金宝app。
字符串数组
结构
稀疏阵列
多维
SAFEARRAY
S(大于二维)只写属性