查看: 1163|回复: 1
打印 上一主题 下一主题

[其他] 使用静态数据做全局数据保存

[复制链接]

2317

主题

54

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
20645
精华
62

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2014-11-29 04:43:41 |只看该作者 |倒序浏览


//GameData
public class GameData
{
    static GameData mSharedInstance;
    //config
    string mUserName;

    public static GameData ShareData {
        get {
            if (mSharedInstance == null) {
                mSharedInstance = new GameData ();
            }
            return mSharedInstance;
        }
    }

    public string UserName {
        get {
            return mUserName;
        }
        set {
            mUserName = value
        }
    }
}

//test
public class TestGameData : MonoBehaviour {
    GameData mData;

    // Use this for initialization
    void Start () {
        mData = GameData.ShareData;
        mData.UserName = "hnlyfy";
    }
   
    // Update is called once per frame
    void Update () {
        Debug.LogWarning(mData.UserName);
    }
}



以前进行Web前端开发,只知道使用类似cookie或者localStorage之类的方法存储全系统变量,所以看到这个很新奇就研究了下。

#引用百度#

静态变量的值在CLR运行时就加载到内存的一个地址中,之后修改这个静态变量的值,会修改在这个内存变量的真实值。这个副本在类释放时,不能一起释放,必须退出应该程序才能释放。

在开发单机过程中遇到多场景切换,每个场景都有某一共同对象并且要保持这一对象的状态,就可以这么用。

分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

hyui    

1

主题

2

听众

6671

积分

高级设计师

Rank: 6Rank: 6

纳金币
2715
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2014-11-29 05:28:37 |只看该作者
good to learn!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|纳金网 ( 闽ICP备08008928号

GMT+8, 2024-5-4 01:03 , Processed in 0.081909 second(s), 32 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部