C ++ vector _mylast返回0xC

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

我有一个矢量,充满了shared_ptr类(SFML)的sf::Drawables。现在有一个函数需要一个新的shared_ptrsf::Drawable并将其添加到向量中。向量声明(它在一个名为GUINodeBody的类中,不要被名称搞糊涂):

std::vector<std::shared_ptr<sf::Drawable>>* allTestWidgets;

现在,功能:

void GUINodeBody::addWidget(std::shared_ptr<sf::Drawable> widget) {
    allTestWidgets->push_back(widget);
}

但是当我调用这个函数时,Visual Studio会在vector第1731行引发异常:

Reading acess violation
std::_Vector_alloc<std::_Vec_base_types<
    std::shared_ptr<sf::Drawable>,
    std::allocator<std::shared_ptr<sf::Drawable> >
> >::_Mylast**(...) returned 0xC.

有人知道为什么会抛出异常吗?

c++ vector shared-ptr
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.