可能であれば、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
更新:エラーあり –