最近はue4をいじっていましたが、ようやくc++のコードを書けそうです。
今回の質問ですが、以下のコードをご覧ください。
class Super ;
class Sub : public Super ;
void Func(std::unique_ptr<Super>&& x) ; //Superクラスのポインタを引数にとる関数
int main()
{
//error
//引数の型が合わないと怒られる(unique_ptr<Sub>が作られるから?)
Func(std::make_unique<Sub>() ) ;
}
対策としてunique_ptr<Super>の変数にmake_uniqueの結果を代入し、それを引数に渡しているのですが、できることなら引数にmake_uniqueを渡してしまいたいです。
なにかいい方法はないでしょうか?