Чтобы использовать в точности то, что вы написали A number = 9; Console.Write(Number);
, вам сначала нужно определить оператор неявного присваивания, а затем вам нужно переопределить метод ToString()
, чтобы получить правильный вывод. Пример кода:
struct A
{
public int Value;
public A(int value)
{
Value = value;
}
// This allows creating an instance of struct A by writing it as an assignment statement
static public implicit operator A(int value)
{
return new A(value);
}
public override string ToString()
{
return Value.ToString();
}
}
public static void Main()
{
A Number = 9;
Console.Write(Number);
}
Демонстрация здесь: https://dotnetfiddle.net/WZPsLX