定义静态变量小问题

问题描述

代码如下:publicpartialclass_Default:System.Web.UI.Page{publicstaticLabel[]list={Label1,Label2};//这句出现错误。(为什么?)protectedvoidPage_Load(objectsender,EventArgse){Label[]list2={Label1,Label2};}}

错误为:错误1字段初始值设定项无法引用非静态字段、方法或属性“_Default.Label1”D:MyDocumentsVisualStudio2008WebSitesWebSite1Default.aspx.cs1635D:...WebSite1为什么不能定义静态变量出错?应该怎么定义一个全局的label数组?

解决方案

解决方案二:
publicstaticLabel[]list=newlabel[]{Label1,Label2};
解决方案三:
publicstaticLabel[]list=newLabel[]{newLabel(),newLabel()};
解决方案四:
因为在那个时候,Label1和Label2还没有被初始化,也就是说Label1和Label2还没存在呢。。。
解决方案五:
引用3楼xrascal的回复:

因为在那个时候,Label1和Label2还没有被初始化,也就是说Label1和Label2还没存在呢。。。

解决方案六:
引用1楼li_qiang_sc的回复:

publicstaticLabel[]list=newlabel[]{Label1,Label2};

protectedvoidPage_Load(objectsender,EventArgse){Label[]list2={Label1,Label2};}

为什么这句没有错误呢?加载为题?
解决方案七:
引用3楼xrascal的回复:

因为在那个时候,Label1和Label2还没有被初始化,也就是说Label1和Label2还没存在呢。。。

在Page_Load里,Label1和Label2已经被初始化完毕,这两个对象也已经存在了。。。
解决方案八:
Label1,Label2是静态的么?
解决方案九:
静态成员只能使用同样是静态的成员。就是这样。。。。。。。。

时间: 2024-10-21 21:07:42

定义静态变量小问题的相关文章

PHP static静态变量详解

PHP static静态变量 变量范围的另一个重要特性是静态变量(static variable).静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失.看看下面的例子: 例子 演示需要静态变量的例子 <?PHP     function Test()      {      $w3sky = 0;      echo $w3sky;      $w3sky++;      }      ?>  本函数没什么用处,因为每次调用时都会将 $w3sky 的值设为 0 并输出 &q

php的静态变量和静态方法

静态变量也称为类变量,静态方法也称为类方法. 简单的说,静态变量就是所有对象都共享的变量.静态变量也称为类变量,静态方法也称为类方法. 如何定义静态变量 访问修饰符 static 变量名; 如何访问静态变量: (1)在类外部:类名::$类变量名 (2)在类内部:self::$类变量名或者::$类变量名 例:一群小孩在玩游戏,不时有新的小孩加入游戏.问:如何知道现在有多少小孩在玩游戏,用面向对象的思想来实现. 静态变量与变通变量的区别: (1)加上static称为静态变量或者类变量,否则称为实例变

PHP中静态变量的使用方法实例分析_php技巧

本文实例讲述了PHP中静态变量的使用方法.分享给大家供大家参考,具体如下: 1.定义静态变量 public static $endpoint,$accessKeyId,$accessKeySecret,$bucket; 2.静态变量赋值 protected function _initialize() { self::$endpoint = C('OSS_ENDPOINT'); self::$accessKeyId = C('OSS_ACCESS_ID'); self::$accessKeySe

在.NET中使用静态变量来代替Application变量

application|变量|静态 wincheer|2002-3-1 --------------------------------------------------------------------------------     在传统的ASP程序中,我们总是使用Application对象来保存应用程序级的变量.这种方式比较耗费内存----看看那些空间供应商明目张胆的限制Application的数量就知道了.现在好了,我们有了.NET ,可以充分发挥静态变量的优点.一方面,可以作为应

php中的静态变量的基本用法

 静态变量只存在于函数作用域内,静态变量只存活在栈中,下次再调用这个函数的时候,该变量的值会保留下来 静态变量只存在于函数作用域内,静态变量只存活在栈中.一般的函数内变量在函数结束后会释放,比如局部变量,但是静态变量却不会.下次再调用这个函数的时候,该变量的值会保留下来.    静态的变量的基本用法    1. 在类中定义静态变量  [访问修饰符] static $变量名;  2. 如何访问静态变量  如果在类中访问 有两种方法 self::$静态变量名 , 类名::$静态变量名  如果在类外访

php中的静态变量的基本用法_php技巧

静态变量只存在于函数作用域内,静态变量只存活在栈中.一般的函数内变量在函数结束后会释放,比如局部变量,但是静态变量却不会.下次再调用这个函数的时候,该变量的值会保留下来. 静态的变量的基本用法 1. 在类中定义静态变量 [访问修饰符] static $变量名; 2. 如何访问静态变量 如果在类中访问 有两种方法 self::$静态变量名 , 类名::$静态变量名 如果在类外访问: 有一种方法 类名::$静态变量名 例子 复制代码 代码如下: class Child{ public $name;

Java 中的 static 使用之静态变量&amp;#183;静态方法&amp;#183;静态初始化块

Java 中的 static 使用之静态变量 大家都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立.然而在某些时候,我们更希望该类所有的对象共享同一个成员.此时就是 static 大显身手的时候了!! Java 中被 static 修饰的成员称为静态成员或类成员.它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享.静态成员可以使用类名直接访问,也可以使用对象名进行访问.当然,鉴于他作用的特殊性更推荐用类名访问~~ 使用 static 可以修饰变量.方法和

销毁表后怎样再创建表-如何在每次循环中都定义一个静态变量?(C++)

问题描述 如何在每次循环中都定义一个静态变量?(C++) 我在写一个功能如下图的程序: 由于这个程序要能循环执行,这导致了一个问题: 在第一次循环中,我选择功能1,即创建一个表(比如int型),代码是 static vec<int> v; //用static是因为我接下来的循环还要对这个表进行操作 在第二次循环中,我选择功能2,即销毁这个表,代码是 v.~vec(); //即调用析构函数 那么余下的 循环就不能进行了... 比如我在第三次循环中选择功能1创建表,可此时不会再运行static v

c语言-C中什么情况下把局部变量定义为局部静态变量

问题描述 C中什么情况下把局部变量定义为局部静态变量 之前都是定义的要么是全局变量要么就局部变量,从来没加过static,现在看到有的变量前面加了static,不知道什么类型的变量要这样定义 解决方案 如果你希望在一个函数中对一个变量只执行一次初始化,以后不再初始化,使用上一次结果,就应该使用静态局部变量. 例如: static int n; 其他类型都可以. 解决方案二: 比如说你要在局部计算一个圆的半径,那么你可以将PI的值申请为static,因为PI以后再也不会变更了!希望能够帮到你! 解