diff options
Diffstat (limited to 'Assets/Test/06_Layout/UI06Test.cs')
-rw-r--r-- | Assets/Test/06_Layout/UI06Test.cs | 90 |
1 files changed, 70 insertions, 20 deletions
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<int, float> 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<int, float> a;
+ RectTransform rect = GetComponent<RectTransform>();
+ 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<StructA, int> d = new Dictionary<StructA, int>();
+ 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<StructA> bb;
+ bb = null;
+ }
+
void Foo()
{
Debug.Log("Foo()");
|