我正在阅读一本关于C#的书,并且遇到了一些我似乎无法查看的东西,因为我不知道它叫什么,或者试图按描述搜索某些东西.
有人可以向我解释发生了什么,或者在(type)引用对象之前的含义是(int)objectname.variablename什么?
这似乎是对我的投射.
编辑:由于大多数人在我猜测时都会关注"我的"引用,并且需要更多代码,因此我将包含我正在审核的代码,这些代码带来了这个问题.我在(int)numericupDown1.Value中质疑(int);
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
dinnerParty.NumberOfPeople = (int)numericUpDown1.Value;
DisplayDinnerPartyCost();
}
Run Code Online (Sandbox Code Playgroud)
它是强制转换,它试图在运行时将variablename强制转换为类型(类型)
它将 numericUpDown1.Value 转换(转换)为 int 值。这也可以使用来完成
Convert.toInt32(numericUpDown1.Value)
Run Code Online (Sandbox Code Playgroud)
我假设dinnerParty.NumberOfPeople 是一个整数值,因此如果您没有进行强制转换,如果提供的值不是整数,则会抛出错误。例如,如果提供的值是双精度数或字符串,则会抛出错误,通过强制转换,它将把双精度数(例如 20.5)转换为 20,并且它将被接受。对于字符串,这取决于字符串中是否包含数字。如果字符串是“12”,那么使用上面提到的转换方法会将其转换为整数 12。
| 归档时间: |
|
| 查看次数: |
1509 次 |
| 最近记录: |