我想要一个字符串,然后我想传递给2个变量。 一个是Int,另一个是字符串。
通常我可以这样做:
string1 = string2;
int1 = Convert.ToInt32(string2);
但是我想知道是否可以用另一种方法来做到这一点, 我想将字符串转换为Int,就像它到达int1变量一样; O不想将实际的string2转换为Int。
所以基本上就像话题所说:
string1 = int1(convert to int) = string2
我不确定这是否可行,希望是。
答案 0 :(得分:2)
魔术。
MagicInt x = 123;
string s = x;
int i = x;
Console.WriteLine("s is " + s);
Console.WriteLine("i is " + i);
public struct MagicInt
{
public MagicInt(int value)
{
_value = value;
}
public MagicInt(string value)
{
_value = int.Parse(value);
}
int _value;
public static implicit operator int(MagicInt value)
{
return value._value;
}
public static implicit operator string(MagicInt value)
{
return value._value.ToString();
}
public static implicit operator MagicInt(int value)
{
return new MagicInt(value);
}
public static implicit operator MagicInt(string value)
{
return new MagicInt(value);
}
}