【问题标题】:All math operations return as an integer? [duplicate]所有数学运算都以整数形式返回? [复制]
【发布时间】:2011-01-11 15:36:07
【问题描述】:

可能重复:
byte + byte = int… why?

我有一个从 (-1024,-1024) 到 (1024,1024) 的网格,所以我不需要 int 提供的所有值,但我注意到我的所有算法都返回为 int 和我需要用(短)对它们进行类型转换。谁能解释为什么所有数学运算都返回为 int 并且由于数学运算返回为 int 解析为 short 是否更有效?

short yCoordinate = (short)(short.Parse(RtData[1][1]) - 1);

【问题讨论】:

标签: c# types casting int primitive-types


【解决方案1】:

返回一个 int 是因为大多数数学运算需要比 short 可以包含的更大的数字。 BCL 可供许多程序员使用,创建者必须平衡可读性、可用性和性能等因素,才能创建通常有用的类。

由于方法签名不考虑返回类型,因此他们必须决定什么作为这些函数的返回类型(short、int、long 等)最有用。他们认为 int 是最好的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-30
    • 2011-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-28
    • 2018-07-24
    相关资源
    最近更新 更多