zoukankan      html  css  js  c++  java
  • 浅谈Empty、Nothing

           在每一个编程语言里面都包含有数组,他们之间或多或少有一些差异,但是总体上没有什么区别,下面我说的数组是在VB.NET里面的使用。


           这些天还在做机房收费系统,随着代码写的越来越多,以前写的代码也出现了一些问题,昨天遇到了一个就是关于数组的方面的,我对数组的认识还是很肤浅的,认为数组仅可以简单的存取一些数据或对象,其实,数组功能还有很多,比如排序、快速检索等等,用好数组可以给程序员带来很大益处。


           举个例子来说明Nothing的用法。

           声明一个存储对象的数组


           我们来判断数组param是否为空时,用下面语句,并向参数数组中添加参数。

          Dim param(0) As SqlParameter

          param(0)=Nothing

          If   Param IsNot Nothing   Then 

                  SqlCmd.Parameters.AddRange(param)

          End If


           我这样写时会出现AddRange参数不能为空的错误,但已经判断过Param不为空了,还是出现错误。


           原因应该是AddRange()增加的是数组中每一个元素的值,他需要确保数组每一个元素不为Nothing。param代表的是数组这个对象,如果数组中有一个元素就说明这个数组不为Nothing,这样就能合理说明上面代码正确。


           Nothing是指向一个空对象的引用,将一个对象变量设为空,就释放了这个变量的引用,释放了对象。


           例如:Dim cnn As  Connection

                      cnn=Nothing

                      释放了cnn(变量)这个连接对象。

            在这里cnn对象是否释放了呢?我们还需要判断一下

                      If cnn Is Nothing  …………

             

            Empty表示一个还没有初始化的变量,变量的数据类型没有要求,可以是integer、string、boolean、date、object等,每种数据类型都有默认初始化值,依据不同的编程语言而不同。


            上面是一般书上写的用法与定义,不断,写程序过程中未免还有些疑惑,他们有什么本质区别?他们有什么内在联系?什么时候可以混用什么时候不可以?好多问题还需要在编程中理解。只靠一点一点的想,不会太全面。


            突然发现,想写好程序就要对语言理解透彻,这样才能运用好语言!!

  • 相关阅读:
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    软件工程实践总结
  • 原文地址:https://www.cnblogs.com/lilongsheng1125/p/4978657.html
Copyright © 2011-2022 走看看