使用XMVECTOR时的内存访问异常

问题描述 投票:0回答:2

我在DirectX11中制作乒乓球而且我得到了一些奇怪的错误。

我在Pong类中声明了一个指针:

XMVECTOR *ballDirection;

出于某种原因,每当我尝试访问它时:

Unhandled exception at 0x002127d8 in DirectX11Pong.exe:
  0xC0000005: Access violation reading location 0x00000000.

我很确定当你尝试访问nullptr指针时会发生这种情况,但是,在任何“访问”指针之前,我已将其初始化:

ballDirection = new XMVECTOR();

例如,现在我遇到此错误的代码行如下:

*ballDirection = XMVectorSetX(*ballDirection, 1);

我认为唯一相关的其他信息是我之前尝试将一个包含paddle信息的指针转换为一个指针数组(对于多个玩家):

(之前)

Sprite *paddle;

(后)

Sprite *paddle[2];

在我这样做的那一刻,我在访问ballDirection时遇到了这个错误,即使它在我制作这个数组之前完美地运行了,并且我在创建数组和修改相应代码时没有更改代码来处理ballDirection

我注意到这个错误后,我改回了代码,这仍然发生了。

我怎样才能解决这个问题?

c++ windows memory-management
2个回答
© www.soinside.com 2019 - 2024. All rights reserved.