Мне просто интересно, как я смогу отбросить объект в список с помощью unique_ptr, если это вообще возможно.unique_ptr push_back и std :: list
Я получаю сообщение об ошибке:
error:
no matching constructor for initialization of
'std::__1::unique_ptr<tester::Stimulation,
std::__1::default_delete<tester::Stimulation> >'
::new ((void*)__p) _Tp(__a0);
мой код выглядит следующим образом:
#include <iostream>
#include <list>
namespace tester
{
class Stimulation
{
std::string name;
public:
Stimulation(std::string n) : name(n) {}
std::string getName() const {return name;}
};
}
using namespace tester;
int main(int argc, char const *argv[])
{
std::list< std::unique_ptr<tester::Stimulation*> > configuration;
//std::list< std::unique_ptr<tester::Stimulation> >::iterator i = configuration.begin();
configuration.push_back(std::unique_ptr<tester::Stimulation>(new Stimulation("NAME1")));
return 0;
}
Что не так с кодом? – wasthishelpful
Я не уверен, но ваш код выглядит хорошо для меня. Пожалуйста, разместите соответствующие сообщения об ошибках. – Rakete1111
обновлено: предоставлена ошибка –