微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 可以将动态变量视为“int”溢出?

假设你有一个动态变量被视为一个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.等等.

原文地址:https://www.jb51.cc/csharp/93069.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐