主要内容

matlab::数据::TypedArray < T >

模板化的c++类来访问数组数据

描述

模板化的TypedArray类提供了类型安全的api来处理所有MATLAB数组类型(稀疏阵列除外)。创建一个TypedArray,叫createArraycreateScalarArrayFactory类的模板中列出模板实例化

这个类定义了以下迭代器类型:

使用迭代器= TypedIterator < T >;使用const_iterator = TypedIterator < T const >;

类细节

名称空间:

matlab:数据

基类:

matlab::数据::数组

包括:

TypedArray.hpp

模板参数

T

类型的元素的引用。

模板实例化

浮动

int8_t

uint8_t

int16_t

uint16_t

int32_t

uint32_t

int64_t

uint64_t

char16_t

bool

std::复杂的双> <

std::复杂的<飘>

std::复杂的< int8_t >

std::复杂的< uint8_t >

std::复杂的< int16_t >

std::复杂的< uint16_t >

std::复杂的< int32_t >

std::复杂的< uint32_t >

std::复杂的< int64_t >

std::复杂的< uint64_t >

matlab::数据::数组
matlab:: data::结构体
matlab::数据::枚举

matlab:: data:: MATLABString

构造函数

拷贝构造函数

TypedArray (const TypedArray < T > & rhs)

TypedArray(常量数组rhs)

描述

创建一个共享数据输入的副本。

参数

const TypedArray < T > & rhs

价值被复制。

常量数组rhs

值指定为matlab::数据::数组对象。

抛出

matlab:: data:: InvalidArrayTypeException

类型的输入数组不匹配的类型TypedArray < T >

拷贝赋值运算符

TypedArray < T > &操作符= (const TypedArray < T > & rhs)

TypedArray < T > &操作符=(常量数组rhs)

描述

分配一个共享数据输入的副本TypedArray < T >

参数

const TypedArray < T > & rhs

价值被复制。

常量数组rhs

值指定为matlab::数据::数组对象。

返回

TypedArray < T > &

更新实例。

抛出

matlab:: data:: InvalidArrayTypeException

类型的输入数组不匹配的类型TypedArray < T >

转移构造函数

TypedArray (TypedArray < T > & & rhs)

TypedArray(数组rhs)

描述

移动内容输入到一个新的实例。

参数

TypedArray < T > & & rhs

价值是感动。

数组rhs

值指定为matlab::数据::数组对象。

抛出

matlab:: data:: InvalidArrayTypeException

类型的输入不匹配。

把赋值运算符

TypedArray < T > &操作符= (TypedArray < T > & & rhs)

TypedArray < T > &操作符=(数组rhs)

描述

移动的输入TypedArray < T >对象。

参数

TypedArray < T > & & rhs

值移动。

返回

TypedArray < T > &

更新实例。

抛出

matlab:: data:: InvalidArrayTypeException

类型的输入数组不匹配的类型TypedArray < T >

析构函数

虚拟~ TypedArray ()

迭代器

开始迭代器

迭代器开始()

const const_iterator开始()

const const_iterator cbegin ()

返回

迭代器

迭代器开始的数组,指定为TypedIterator < T >

const_iterator

迭代器,指定为TypedIterator < typename std:: add_const < T >:: type >

抛出

没有一个

结束迭代器

迭代器端()

const const_iterator结束()

const const_iterator cend ()

返回

迭代器

迭代器结束的数组,指定为TypedIterator < T >

const_iterator

迭代器,指定为TypedIterator < typename std:: add_const < T >:: type >

抛出

没有一个

索引操作符

运营商[]

ArrayElementTypedRef < T, std:: is_const < T >::价值>操作符[](size_t idx)

ArrayElementTypedRef < T,真正>操作符[](size_t idx)常量

描述

使[]索引上TypedArray。索引是基于0。

参数

size_t idx

第一个数组索引。

返回

ArrayElementTypedRef < T, std:: is_const < T >:: value >

包含索引指定的临时对象。如果类型T常量,然后返回值允许检索数组的元素,但不能修改。否则,可以修改或检索元素。

ArrayElementTypedRef < T,真正的>

包含索引指定的临时对象。返回值允许检索数组的元素,但不能修改。

抛出

没有一个

成员函数

释放

buffer_ptr_t < T >释放()
描述

释放潜在的缓冲区从数组中。如果数组是共享的,一个缓冲区副本;否则,没有副本。缓冲区被释放之后,该数组包含任何元素。

返回

buffer_ptr_t < T >

unique_ptr包含的数据指针。

抛出

matlab:: data:: InvalidArrayTypeException

TypedArray不支持释放缓冲区。万博1manbetx

例子

全部展开

创建一个数组相当于MATLAB数组[1 2;3 4],然后用一个数组的每个元素的值。

# include“MatlabDataArray。进行“int main () {matlab::数据::ArrayFactory工厂;/ /创建一个数组相当于MATLAB array [1 2;3 4]。matlab::数据::TypedArray <双> D =工厂。createArray <二> ({2,},{1、3、2、4});/ /改变的值。(汽车elem: D) {elem = 5.5;}返回0;}
介绍了R2017b