halcon-数组
在HDevelop中
*******数组定义******* A:=[] *空数组--[] A1:=[1] *1 A2:=[2,1] *[2,1] A3:=[A1,[1,2,3]] *[1,1,2,3] B:= A3 + 1 *[2,2,3,4] 每一个数加 1 B1:=A3*2 *[2, 2, 4, 6] 每一个数*2
C:=[1,2,3,4,5] B:=[10,20,30,40,50] D:=B+C *数组相加(前提是两个数组元素个数要一样) *每个对应的元素进行相加 *D的值是[11, 22, 33, 44, 55] len := |D| *求数组的长度即数组的元素个数 *len:=5 tuple_length (D,len1) *求数组的长度即数组的元素个数 *len1:=5 value := D[2] *通过下标获取元素值,下标是从0开始的 *value :=33
A:=[10,20,30,40,50] A[6]:=100 *赋值 [100, 20, 30, 40, 50, 0, 100] A[0,2,3]:=99 *批量赋值 [99, 20, 99, 99, 50, 0, 100] *下标是要赋值的位置序号 B:=[10:15] *[10, 11, 12, 13, 14, 15] *B的值为10到15的连续值 B1:=[10:2:20] *[10, 12, 14, 16, 18, 20] *B1的值为10到20的连续值,步长为2,步长可以为负数
A:=[10,30,20,40,50] B:=[1,30,20,4,5] tuple_union(A,B,C) *C的值为 [1, 4, 5, 10, 20, 30, 40, 50] *两个数组进行合并操作,并自动排序【对两个数组进行并集操作】 *注意:合并时重复的元素只出现一次 tuple_intersection(A,B,D) *D的值为 [20, 30] *对两个数组进行交集操作,并自动排序 tuple_replace (A, [0,2], ['100','200'], E) *E的值为 ['100', 30, '200', 40, 50] *替换操作 *参数2:要替换的位置序号 *参数3:要替换的值 *参数4:替换后保存的数组变量 tuple_insert (A, 3, '500', F) *F的值为 [10, 30, 20, '500', 40, 50] *插入元素 *参数2:插入的位置序号 *参数3:插入的值 *参数4:插入后保存的数组变量
在QtCreator中
HTuple hv_aa, hv_i; //HTuple类型 在定义数组时,不需要C++的格式 hv_aa.Clear();//清空 hv_aa[0] = 10; hv_aa[1] = 20; hv_aa[2] = 30; hv_i = hv_aa.TupleLength();//返回数组元素个数 int i=hv_i.I(); qDebug()<<i;