From 83eb6c0dc5773c40b5ee4d9b2fb1d72a7d5294f5 Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 26 Apr 2021 21:16:23 +0800 Subject: *misc --- Assets/Test/06_Layout/UI06Test.cs | 90 ++++++++++++++++++++++++++++++--------- 1 file changed, 70 insertions(+), 20 deletions(-) (limited to 'Assets/Test/06_Layout/UI06Test.cs') diff --git a/Assets/Test/06_Layout/UI06Test.cs b/Assets/Test/06_Layout/UI06Test.cs index 5b3dcb7..70ec744 100644 --- a/Assets/Test/06_Layout/UI06Test.cs +++ b/Assets/Test/06_Layout/UI06Test.cs @@ -4,6 +4,32 @@ using System.Collections.Generic; using UnityEngine; using System.Linq; +interface IS +{ + void Foo(); +} + +struct StructA : IS +{ + public static int value2 = 29; + public int value; + public RectTransform rectTransform; + public StructA(RectTransform rect, int v) + { + // Debug.Log("StructA()"); + this.rectTransform = rect; + this.value = v; + } + + public void Foo() + { + throw new NotImplementedException(); + } + +} + + + public class UI06Test : MonoBehaviour { public delegate void ClickHandler(); @@ -11,26 +37,50 @@ public class UI06Test : MonoBehaviour { public delegate void BroadcastCallback(params object[] objs); // Use this for initialization - void Start () { - // OnClick += () => { Debug.Log("1"); }; - // OnClick += () => { Debug.Log("2"); }; - // OnClick += Foo; - // OnClick += Foo; - // OnClick += Foo; - // OnClick += () => { Debug.Log("3"); }; - // OnClick += () => { Debug.Log("4"); }; - // OnClick += () => { Debug.Log("5"); }; - // OnClick -= Foo; - // OnClick -= Foo; - // OnClick -= Foo; - // OnClick = OnClick - Foo; - //// Delegate.Remove(OnClick, Foo); - // OnClick(); - // ClickHandler f2 = new ClickHandler(Foo); - // ClickHandler f3 = Foo; - // Dictionary a; - } - + void Start () { + // OnClick += () => { Debug.Log("1"); }; + // OnClick += () => { Debug.Log("2"); }; + // OnClick += Foo; + // OnClick += Foo; + // OnClick += Foo; + // OnClick += () => { Debug.Log("3"); }; + // OnClick += () => { Debug.Log("4"); }; + // OnClick += () => { Debug.Log("5"); }; + // OnClick -= Foo; + // OnClick -= Foo; + // OnClick -= Foo; + // OnClick = OnClick - Foo; + //// Delegate.Remove(OnClick, Foo); + // OnClick(); + // ClickHandler f2 = new ClickHandler(Foo); + // ClickHandler f3 = Foo; + // Dictionary a; + RectTransform rect = GetComponent(); + StructA a = new StructA(rect, 1); + Debug.Log(a.GetHashCode()); + StructA a2 = new StructA(null, 1); + Debug.Log(a2.GetHashCode()); + StructA b = new StructA(rect, 2); + Debug.Log(b.GetHashCode()); + Dictionary d = new Dictionary(); + d.Add(a, 10); + if (d.ContainsKey(a2)) + { + Debug.Log("包含"); + } + else + { + Debug.Log("不包含"); + } + System.Object obj = new object(); + Debug.Log(obj.GetHashCode()); + System.Object obj2 = new object(); + Debug.Log(obj2.GetHashCode()); + //StructA? bb; + Nullable bb; + bb = null; + } + void Foo() { Debug.Log("Foo()"); -- cgit v1.1-26-g67d0