25 lines
444 B
C#
25 lines
444 B
C#
|
using System;
|
||
|
|
||
|
class MyTest {
|
||
|
public static void Main(String[] args) {
|
||
|
S s1 = new S(11);
|
||
|
I s2 = s1; // Implicit boxing S-->I
|
||
|
S s3 = (S)s2; // Explicit unboxing I-->S
|
||
|
s3.Print(); // Should print 11, does not
|
||
|
}
|
||
|
}
|
||
|
|
||
|
interface I {
|
||
|
void Print();
|
||
|
}
|
||
|
|
||
|
struct S : I {
|
||
|
public int i;
|
||
|
public S(int i) {
|
||
|
this.i = i;
|
||
|
}
|
||
|
public void Print() {
|
||
|
Console.WriteLine(i);
|
||
|
}
|
||
|
}
|