您的位置 首页 芯闻

LABVIEW深化探究—reference(参阅)和refnum(参阅号)

看到今天的评论,建议我写一点有关REFERENCE的文章,的确早就想写点这部分内容,但是不太容易,因为NI这方面的中文资料很少,我甚至无法准

看到今日的谈论,主张我写一点有关REFERENCE的文章,确实早就想写点这部分内容,可是不太简单,由于NI这方面的中文材料很少,我乃至无法精确地翻译REFERENCE。

REFERENCE的惯例翻译是参阅,目前国内有关LV的书本也是这样翻译的,可是从我个人了解仍是翻译成引证比较好。

为了精确了解引证的概念有必要先解释一下C言语中指针的概念。

int var;
int *pVar;
pVar=&var;

当咱们声明晰var整型变量后,在计算机的内存中就分配了四个字节的接连内存空间(与编译器有关,前期是两个字节),pVar是一个指向整型变量的指针,它自身便是32位整型数,天然也占四个字节的内存空间,不过这四个字节的内容是VAR的内存地址。

LV的参阅是什么那?我个人了解便是目标的指针。我在一篇文章中说到,LV自身是根据数据流的,不过它的前面板控件却是典型的面向目标的类的承继联系。LV的目标便是指向各品种的指针(当然不仅仅是控件,菜单,文件等也是用参阅进行参数传递的)。

C言语的指针有两种状况,一是未指向任何变量的指针( int *pVar,此刻,仅仅界说了指针,未指向任何变量或许目标),二是指向了特定的变量或许目标(pVar=&var)

实践上,LV的参阅也分红这两种状况,咱们能够经过两种方法来创立控件的参阅。

咱们以CONTROL REFERENCE为例,当咱们在前面板生成这个控件的时分,该控件未指向任何特定的控件,乃至未指向任何特定的数据类型,比方BOOLEAN ,NUMERIC等等。

从C言语的视点,更像界说了一个void *pVar;(当然,它现已指定的规模,是控件的参阅)

咱们能够以为它指向的是控件的基本类,可是是未初始化的,未指向特定目标。

LABVIEW的每一个REFERENCE都有一个编号,称为REFERENCE NUMBER,简写RefNum,RefNum是目标(可能是控件,面板,文件,菜单等)的仅有标识符号,这个标识符号假如了解成指针应该是个I32表明的内存地址。

关于C言语,未初始化的的指针一般让它指向0,看LV是否如此那?

关于前面两个,控件参阅和菜单参阅,由于未指向任何特定目标,所以他们的REFNUM的值是0,而下面的NUMER%&&&&&% REFNUM,由于控件自身现已存在了,因而它的值是存在的,这和C言语是相似的。

一个未指向任何目标的指针称作空指针,那么未指向任何目标的参阅也能够称作空参阅。

能够看出,未指向任何目标的参阅号REFNUM的值是0,LV判别它是一个空的或许不合法的REFNUM.

关于两个指向同一特定控件的REFERENCE,它们的REFNUM是相同的。

由此能够得出结论,在加载前面板后,控件目标现已实践存在,指向同一控件的参阅,他们的参阅号是相同的。得到控件的参阅号就能够操控控件的一切特点,如是否可见,闪耀等。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/xinwen/211446.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部