c# 静态变量,静态成员与非静态变量,非静态成员问题。
publicpartialclassForm1:Form{privatestaticinti=0;privatestaticBitmapbitImg=null;priva...
public partial class Form1 : Form
{
private static int i = 0;
private static Bitmap bitImg = null;
private static string imgPath = @"C:\CutScreen.png";
private static string txtPath = @"C:\CutScreenText.txt";
public Form1(){
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e){ // }
}
这是WinForm中的代码,如果我的对象bitImg,变量i 只是在本类中的方法或button事件中使用,需不需要定义为静态的? 我试了下静态不静态都能用,哪个好呢?为什么?谢谢各位大虾!3q~~ 展开
{
private static int i = 0;
private static Bitmap bitImg = null;
private static string imgPath = @"C:\CutScreen.png";
private static string txtPath = @"C:\CutScreenText.txt";
public Form1(){
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e){ // }
}
这是WinForm中的代码,如果我的对象bitImg,变量i 只是在本类中的方法或button事件中使用,需不需要定义为静态的? 我试了下静态不静态都能用,哪个好呢?为什么?谢谢各位大虾!3q~~ 展开
展开全部
类中定义的静态变量,是属于类而不属于实例的(称为类变量)。类变量的特点是:不用实例化类就可以用。例如:
public class myClass
{
public static int Max; //类变量
public int Value; //实例变量
……
}
类变量不需要实例化类就可以直接使用:
myClass.Max = 200; //不用实例化myClass就可以用类中的静态变量Max
而变量Value是实例变量,与Max不同,必须实例化myClass后,才能使用变量Value
myClass o = new myClass(); //实例化
o.Value = 200; //通过实例,使用变量Value
在你的问题中,在类Form1中的静态变量:
private static int i = 0;
private static Bitmap bitImg = null;
private static string imgPath = @"C:\CutScreen.png";
private static string txtPath = @"C:\CutScreenText.txt";
同样是属于类变量,只是被private限制在类中使用。
至于哪个好呢?很难说类变量好还是实例变量好。只要你明白类变量和实例变量差别,就可以根据它们的特点来使用。O(∩_∩)O~
Storm代理
2023-08-29 广告
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I...
点击进入详情页
本回答由Storm代理提供
展开全部
看情况了,
如果是单纯的为了在全局用的话不需要。
如果是在很多的类或者窗体中需要用到的话就需要了。
静态的概念就是:程序运行后一直存在于内存中。
非静态的概念就是:运行后需要用到就分配内存,不需要就不分配
如果是单纯的为了在全局用的话不需要。
如果是在很多的类或者窗体中需要用到的话就需要了。
静态的概念就是:程序运行后一直存在于内存中。
非静态的概念就是:运行后需要用到就分配内存,不需要就不分配
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就你的问题来回答:
如果你就在方法内部使用,bitimg 和 i 放在方法中,并且不用静态的是最好的。
如果你就在方法内部使用,bitimg 和 i 放在方法中,并且不用静态的是最好的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询