[英]How Int32 datatype is directly assigned?
Int32 i = new Int32();
i = 10;
在这里,我是struct数据类型,我们直接在其中分配一个值
struct myst
{
}
myst mySt = new myst();
myst = 10;
在这里,我需要分配一个属性,所以问题是Int32
如何直接向结构对象分配值?
如果我正确理解了您(并且我不知道是否可以)。 要隐式分配给Custom Type ,您将需要实现一个隐式运算符
隐式关键字用于声明隐式的用户定义类型转换运算符。 如果保证转换不会导致数据丢失,请使用它启用用户定义类型和另一类型之间的隐式转换。
例
struct FunkyStruct
{
public FunkyStruct(int d) { val = d; }
public int val;
// ...other members
// User-defined conversion from Digit to double
public static implicit operator int(FunkyStruct d)
{
return d.val;
}
// User-defined conversion from double to Digit
public static implicit operator FunkyStruct(int d)
{
return new FunkyStruct(d);
}
}
用法
public static void Main()
{
FunkyStruct s;
s = 10;
Console.WriteLine(s.val);
}
更新资料
Console.WriteLine(s),它应该像int一样打印10,我该如何实现
它已经做到了
神秘不是Int32。 您可以在这里做的一件事是,在struct中创建Int32变量并为其分配值。
struct myst
{
public Int32 a { get; set; }
}
static void Main(string[] args)
{
myst mySt = new myst();
mySt.a = 10;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.