假设你有一个动态变量被视为一个int(值小于int.MaxValue).
在应用程序的某个时刻,动态值增加并超过“int”值.
应用程序是否会崩溃或处理(转换)为长?
解决方法
Suppose you have a dynamic variable being treated as an int (value is less the int.MaxValue).
通过“被视为int”,我认为你的意思是“包含运行时类型int”的值.
At some point in your application the dynamic value increases and surpasses the “int” value.
好.怎么样?你忽略了问题的最重要部分.价值如何增加?
Will the application crash or treat it (convert) as a long?
有时它会崩溃,有时结果会很长,有时结果将是双倍,或十进制,有时int将包围.既然你没有说出这个价值是如何增加的,那么就不可能回答你的问题.
一般来说,动态规则是动态代码将在运行时运行,因为如果编译时类型已知,则等效的非动态代码将表现出来.如果编译器给出错误,则运行时会给出错误.如果编译器会添加两个int来生成三分之一,那么运行时会添加两个int来生成第三个.如果编译器会添加一个int和double来生成一个double,那么运行时会添加一个int和一个double来生成一个double.等等.