[英]vector iterator crashing my program when trying to call a funcition
我正在嘗試制作類似於搜索歷史記錄的 object 並且我遇到了搜索目標的迭代器問題,這在初始化時使我的程序崩潰。 另一個問題是,當我嘗試更改一些指針(f.ex -> 到 * )時,它找不到任何函數
.ccp
History::History(std::vector<std::unique_ptr<Brick>>::iterator _itr)
: itr(_itr)
{
this->itr_text = (*itr)->getText(); // <--- this line is strange
// some SFML
}
History::~History()
{
}
.hpp
class History
{
public:
History(std::vector<std::unique_ptr<Brick>>::iterator _itr);
~History();
private:
std::vector<std::unique_ptr<Brick>>::iterator itr;
std::string itr_text;
/// some SFML
};
我計划添加更多的迭代器函數,所以我會感謝你的幫助
itr
是std::unique_ptr<Brick>
類型的目標元素。 您可以使用:
this->itr_text = (*(*itr)).getText();
或者
this->itr_text = (*itr)->getText();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.