zoukankan      html  css  js  c++  java
  • 反射与特性与Tool编写

         大多数程序都是用来处理数据的,他们读,写,操作和显示数据,图形也是一种数据。

         程序员为某种目的创建和使用一些类型,因此,在设计时必须理解所使用类型的特性

         有关程序及其类型的数据被称为元数据,他们保存在程序的程序集中,程序在运行时,可以查看其它程序集或本身的元数据。查看的行为叫反射,比如Type类。

         特性是一种允许我们向程序集增加元数据的语言结构。他用于保存程序结构信息的某种特殊类型的类。特性的目的是告诉编译器把程序结构的某组元数据嵌入程序集。我们可以

    通过把特性应用到结构来实现。

          下面是Unity3d中应用特性的实例。

    public class PathTool : ScriptableObject {
    
    	[MenuItem("PathTool/Set Parent %q")]
        static void SetParent()
        {
            Debug.Log("Perform operation");
        }
        [MenuItem("PathTool/Set Parent %q", true)]
        static bool VallidateSelectiom()
        {
            if (Selection.activeGameObject == null)
                return false;
            else { return true; }
        }
    }
    

      

    在编辑器状态下执行的脚本必须反正Editor文件下。

    在非Editor文件下并把脚本放在别的对象上。

    public class GameManager : MonoBehaviour {
    
    	[ContextMenu("BuildPath")]
        void BuildPath()
        {
            Debug.Log("Perform Operation");
        }
    }
    

  • 相关阅读:
    项目数据分析师CPDA印章
    一点想法
    该减肥啦
    PMP证书到手
    Google App Engine之初体验
    转K线理论初级三
    黄小琥没那么简单
    使用webapp框架再现Hello World
    Google App Engine之介绍篇
    转股票中KDJ线的详细分析
  • 原文地址:https://www.cnblogs.com/white-L/p/6483876.html
Copyright © 2011-2022 走看看