34
1
using System;
2
3
public class Program
4
{
5
struct FunkyStruct
6
{
7
public FunkyStruct(int d)
8
{
9
val = d;
10
}
11
12
public int val;
13
// ...other members
14
// User-defined conversion from Digit to double
15
public static implicit operator int (FunkyStruct d)
16
{
17
return d.val;
18
}
19
20
// User-defined conversion from double to Digit
21
public static implicit operator FunkyStruct(int d)
22
{
23
return new FunkyStruct(d);
24
}
25
}
26
27
public static void Main()
28
{
29
FunkyStruct s;
30
s = 10;
31
Console.WriteLine(s.val);
32
Console.WriteLine(s);
33
}
34
}
Cached Result