我正在尝试创建一个类似于搜索历史的对象,并且搜索目标的迭代器出现问题,这在初始化时使我的程序崩溃。另一个问题是,当我尝试更改一些指针(f.ex -> to * (时,它找不到任何函数
。中国共产党
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();