斗斗金 2022-08-31 13:25 采纳率: 50%
浏览 79
已结题

unity关于字典的问题

字典建立如何被其他物体调用
我本来想法是 建立一个ScriptableObject 来保存字典
但是我发现 ScriptableObject 不支持字典 不可以保存字典
那现在我用的办法就是在增加1个物体在程序上 然后物体保存脚本 来保存这个字典 如果调用就需要先查询这个物体 在调用字典
但是我感觉这样非常不正确并且没有解耦 使用也非常麻烦
所以我想问下 字典应该保存什么地方。然后被不同对象调用,还能解耦

  • 写回答

4条回答 默认 最新

  • 周周的Unity小屋 2022-08-31 15:33
    关注

    你的字典可以在任何类上创建呀,如果你想要外部访问,声明为public;
    访问分几种情况:

    静态类:
    public static class A
    {
    public static Dictionary<int, string> Dic = new Dictionary<int, string>();
    }
    外部调用:A.Dic;
    
    普通类:
    public class A
    {
    public  Dictionary<int, string> Dic = new Dictionary<int, string>();
    }
    外部调用:
    A a=new A(){}
    a.Dic;
    
    单例类:
    public class A
    {
    public static A intance;
    public Dictionary<int, string> Dic = new Dictionary<int, string>();
    
    private void Awake(){}
    
    外部调用:A.Dic;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月9日
  • 已采纳回答 9月6日
  • 创建了问题 8月31日

悬赏问题

  • ¥50 神舟笔记本,没有linux的驱动,装的Ubuntu系统,想把风扇速度调到最大
  • ¥15 workstation加载centos进入emergency模式,查看日志报警如图,怎样解决呢?
  • ¥50 如何用单纯形法寻优不能精准找不到给定的参数,并联机构误差识别,给定误差有7个?matlab
  • ¥15 workstation加载centos进入emergency模式,查看日志报警如图,没有XFS,怎样解决呢?
  • ¥15 应用商店如何检测在架应用内容是否违规?
  • ¥15 Ubuntu系统配置PX4
  • ¥50 nw.js调用activex
  • ¥15 数据库获取信息反馈出错,直接查询了ref字段并且还使用了User文档的_id而不是自己的
  • ¥15 将安全信息用到以下对象时发生以下错误:c:dumpstack.log.tmp 另一个程序正在使用此文件,因此无法访问
  • ¥15 速度位置规划实现精确定位的问题