【问题标题】:What should I know about developing for 64 bit applications?关于开发 64 位应用程序,我应该了解什么?
【发布时间】:2009-08-02 20:45:02
【问题描述】:

我打算买一个 64 位的操作系统,这样我就可以看到我安装的所有 4 个内存。

这提出了一个问题:作为开发人员,在为 64 位操作系统设计应用程序时,我需要了解什么?我在某处读到 int 等数据类型(我用 C# 编写代码)可以容纳更大的值(可能是由于字节/位等)。

有什么地方可以解释这一切是如何运作的(我猜我的基础和数学有点生疏)?

谢谢

【问题讨论】:

    标签: c#


    【解决方案1】:

    您不会在 C# 中看到太大的不同。 System.IntPtr 的范围会改变;就是这样。所有其他数字类型将保持相同的范围;但是,使用 Int64 的操作将比在 32 位系统上更有效。

    在调用非托管代码时,请注意非托管代码是为 64 位构建的,并且不会执行 64 位不安全的事情,例如将指针转换为整数。

    【讨论】:

    • 我同意。对于大多数 C# 项目,您只需将构建配置切换为“x64”即可​​。我遇到最多的问题是第三方库,尤其是那些用非托管代码实现的库。如果您尝试从 64 位 C# 使用 32 位 DLL(反之亦然),您将得到一个 BadImageFormatException,一开始可能会很混乱。
    【解决方案2】:

    这里有一些来自Microsoft 的有用信息。

    我对转向 64 位机器的失望之一是 Visual Studio 2008 只能以 32 位运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-23
      • 2017-01-14
      • 2018-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-10
      相关资源
      最近更新 更多