【发布时间】:2012-08-07 00:38:17
【问题描述】:
当MouseMoved event 被触发时,我正在使用GetPosition(this),因此:
Point pt = e.GetPosition(this);
据我所知,以下两种类型转换都有效,但推荐使用哪一种,为什么?
int x = (int)pt.X;
int x = (Int32)pt.X;
【问题讨论】:
-
samething,当它转换为 IL int 将是 int32 所以不用担心@amit kohan
-
建议您使用语言提供的数据类型。因此,对于 C#,它将是
int。 -
我的经验法则是使用文档中指定的数据类型。如果
Point的X和Y属性记录为ints,那么这就是我将使用的。 -
@HansPassant
X属性我很确定是双倍的。