yuukasky 2015-09-06 06:23 采纳率: 0%
浏览 2922

C# 一个全局变量总是自动变成初始值

C# 一个全局变量总是自动变成初始值
如题,在class中定义了一个枚举类型的变量,

    public partial class XXXXDlg : Form
    {
        private enum POSOFITEMICONSTYLE
        {
            POSLARGEICONS,
            POSSMALLICONS,
            POSLIST,
            POSTITLE,
            POSDETAILS
        };
        private static POSOFITEMICONSTYLE iCurrentSelectedItemIconStyle = new POSOFITEMICONSTYLE ( );
    }

我在某些方法中给iCurrentSelectedItemIconStyle赋过值了(调试时也确实看到它的值已经改变了),但当用到iCurrentSelectedItemIconStyle时,它又变成了初始值POSLARGEICONS。
赋值时和使用时,当前的Form是没有关闭的,Form周期还没有结束的。。。
小弟新手,一直没搞明白这是为什么,所以来向各位大神求救。

  • 写回答

4条回答 默认 最新

  • bdmh 优质创作者: 移动开发技术领域 2015-09-06 06:34
    关注

    static变量,当你访问到它所在的类时,就会被初始化

    评论

报告相同问题?