XMVECTOR 数据类型

一种可移植类型,用于表示四个 32 位浮点或整数组件的向量,每个组件以最佳方式对齐并映射到硬件向量寄存器。

注解

有关在 C++ 中编程时可用的 XMVECTOR 其他功能(如构造函数和运算符)的列表,请参阅 XMVECTOR 扩展

在 DirectXMath 库中,为了完全支持可移植性和优化, XMVECTOR 设计为不透明类型。 实际实现 XMVECTOR 依赖于平台。

通常,代码不应依赖于任何给定平台特定实现的具体细节 XMVECTOR。 特定于平台的实现具有以下特征:

  • 它们不可移植。
  • 它们可能会在版本之间更改。
  • 不合理地使用实现细节可能不理想。

开发人员应使用 DirectXMath 库的访问 加载存储 函数来获取和设置向量,并使用 DirectXMath 库 4D 向量函数 对其进行操作。

有关需要在不同平台上实现XMVECTOR的详细信息的项目,请参阅库内部。

编译器别名

DirectXMath.h 头文件使用对象的别名 XMVECTOR ,特别是 CXMVECTORFXMVECTOR。 标头使用这些别名来符合不同编译器的最佳内联调用约定。 对于使用 DirectXMath 的大多数项目,将这些类型视为确切的 XMVECTOR别名就足够了。

例如:

[CDATA[
typedef const XMVECTOR FXMVECTOR;
typedef const XMVECTOR CXMVECTOR;
]]

有关需要不同平台如何处理其调用约定的详细信息的项目,请参阅 库内部

对于 XNAMATH 2.x, XMVECTOR 数据类型具有 .x、.y、.z、.和 .w 元素成员,这通常会导致性能不佳。 使用XM_STRICT_VECTOR4类型可提供不透明数据类型的 DirectXMath 定义的选择加入。

命名空间:使用 DirectX

平台要求

Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 Windows SDK for Windows 8。 支持 Win32 桌面应用、Windows Microsoft Store应用和 Windows Phone 8 个应用。

要求

要求 Value
标头
DirectXMath.h

另请参阅

DirectXMath 库类型

XMVECTORI32 数据类型

XMVECTORF32 数据类型

XMVECTORU32 数据类型

XMVECTORU8 数据类型

XMVECTOR 数据类型