Beispiel #1
0
        static void Box()
        {
            object o = new MutValueType {
                val = 300
            };

            ((MutValueType)o).Increment();
            ((MutValueType)o).Increment();
        }
Beispiel #2
0
        static void Field()
        {
            ReadonlyField.Increment();
            ReadonlyField.Increment();
            MutableField.Increment();
            MutableField.Increment();
            // Ensure that 'v' isn't incorrectly removed
            // as a compiler-generated temporary
            MutValueType v = MutableField;

            v.Increment();
            Console.WriteLine("Final value in MutableField: " + MutableField.val);
        }
Beispiel #3
0
        public static void Main()
        {
            MutValueType m = new MutValueType();

            RefParameter(ref m);
            ValueParameter(m);
            Field();
            Box();
            var gvt = new GenericValueType <string>("Test");

            gvt.Call(ref gvt);
            new Program().InstanceFieldTests();
        }
Beispiel #4
0
 static void ValueParameter(MutValueType m)
 {
     m.Increment();
     m.Increment();
 }
Beispiel #5
0
 static void RefParameter(ref MutValueType m)
 {
     m.Increment();
     m.Increment();
 }