首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++中有什么可以使Windows8应用程序不能在ARM上运行呢?

C++中有什么可以使Windows8应用程序不能在ARM上运行呢?
EN

Stack Overflow用户
提问于 2012-10-22 17:04:55
回答 4查看 2.1K关注 0票数 17

在构建Windows 8应用程序时,开发人员可以选择HTML/JavaScript、XAML/.Net (C#/VB)和XAML/C++。我想用XAML/C++编写我的应用程序。

在前两种选择中构建应用程序几乎可以保证您的应用程序将在Intel和ARM架构上执行。

但我听说,如果我在我的C++应用程序中做了某些事情,我可能会导致应用程序在ARM架构上不执行。但我不知道细节。

有谁知道C++ Windows 8应用程序应该避免什么,这样它们就可以在ARM上运行了吗?这些是体系结构的决定还是技术上的差异?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-10-22 19:51:59

为了在每个体系结构上运行,首先需要为每个体系结构进行编译。如果您编写了标准的C++ (如果您不依赖于未定义的行为和/或特定于平台的行为),那么在体系结构之间移植时通常会造成麻烦的事情是:

(这个列表就是一个例子)

  • int的大小、长的、长的(和其他的)可以在不同的平台上有所不同。
  • 焦的符号性
  • 如何填充结构
  • 浮点数的二进制布局
  • 恩典
  • 还有更多。

通常你是安全的,如果你不疯狂的指针算术和铸造。

票数 3
EN

Stack Overflow用户

发布于 2012-10-22 19:48:33

我不知道有什么会使您的代码在ARM (内联程序集除外)下根本不执行或编译。

然而,有些事情你可以做,这会使手臂给出错误的答案。

ARM处理器是“弱有序的”--这篇最近的文章给出了低层次的信息。

http://preshing.com/20121019/this-is-why-they-call-it-a-weakly-ordered-cpu

但是总括而言,ARM处理器可能会重新排序内存访问,如果您不小心,这可以在多线程应用程序中在x86和ARM体系结构之间给出不同的结果。

票数 1
EN

Stack Overflow用户

发布于 2012-10-22 19:51:44

ARM只支持Windows应用程序。

系统需求 支持体系结构:WindowsSDKforWindows8支持为以下架构构建应用程序: x86 x64 ARM (Windows应用程序)注意:WindowsSDKforWindows8不能直接安装在ARM体系结构上。您可以在x86或x64平台上安装Windows,以便构建针对ARM架构的应用程序。

以下是您可以参考的文章的链接。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13016861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档