halcon中HObject和HTuple的两种数据结构的初始化状态(C#)

1、HObject hobject=null;

表示hobject是没有对象,对象不存在。在halcon算子中,只能作为输出变量(即out位置),作为输入变量就会报错。

2、HObject hobject;

HOperatorSet.GenEmptyObj(out hobject)

表示hobject是有对象,对象存在,但是对象是空的。在halcon算子中,可以作为输出变量和输入变量。

3、HTuple htuple=null;

表示htuple是没有对象,对象不存在。在halcon算子中,可以作为输出变量和输入变量。

4、HTuple htuple = new HTuple();

表示htuple是有对象,对象存在,但是对象是空的。在halcon算子中,可以作为输出变量和输入变量。

数组初始化一定要HTuple htuple = new HTuple(),如下例:

HTuple tempRow=20;

//HTuple tempRowAry=null;会报错没有实例

HTuple tempRowAry=new HTuple();

tempRowAry.Append(tempRow);

不建议下面这种用法

HOperatorSet.TupleConcat(tempRowAry, tempRow, out tempRowAry);

原文地址:https://www.cnblogs.com/QuincyYi/p/12396957.html