У меня есть базовый объект с именем IList
. Тогда у меня есть VectorList
, который наследует IList
.
то у меня есть такая функция:
std::unique_ptr<IList> factory(){
auto vlist = std::make_unique<VectorList>();
return vlist;
}
Это компилируется без проблем в gcc
, но clang
дает следующую ошибку:
test_file.cc:26:9: error: no viable conversion from 'unique_ptr<VectorList, default_delete<VectorList>>' to
'unique_ptr<IList, default_delete<IList>>'
return vlist;
Как правильно обращаться с такими ошибками?