"call of overloaded ‘make_unique(std::__cxx11::string)’ is ambiguous""‘make_unique’ was not declared in this scope"
这看起来应该是不可能得到这两个错误,因为要么std::make_unique是由于ADL拉进来的,或者它不是作为参考,对于非模板的std</e
我遇到了一些与如何使用std::make_shared (或std::make_unique )来创建新类型的Bar有关的问题,后者具有一些可选的模板参数。如果我不想改变默认策略,那就没问题了,简单的行就行了:但是,如果我希望Bar接受不同的“策略”作为模板args,如何将它们传递到std::make_unique?尝试了以下(没有运气):
auto bar = std</em
如果我创建一个由唯一指针管理的对象,例如: auto pObjectA = std::make_unique<A>(); 但是我需要这个对象作为另一个对象的参数: auto pObjectB = std::make_unique<B>(*objectA); 如果objectA后来随std::move一起移动,传递给objectB的引用是否仍然有效?something that calls a method in A*/ }
A& m