Cpp: проблема с upcastshared_ptr (C2440) с классом [дубликат]C++

Программы на C++. Форум разработчиков
Ответить
Гость
 Cpp: проблема с upcastshared_ptr (C2440) с классом [дубликат]

Сообщение Гость »

Во-первых, извините за мой плохой английский.
upcast со структурой скомпилирован хорошо

Код: Выделить всё

struct FTestBase
{
public:
FTestBase() {}
};

struct FTestDerived : FTestBase
{
public:
FTestDerived() {}
};

std::shared_ptr tmp = std::make_shared();//good
но преобразование класса не удалось.

Код: Выделить всё

class FTestBase
{
public:
FTestBase() {}
};

class FTestDerived : FTestBase
{
public:
FTestDerived() {}
};

std::shared_ptr tmp = std::make_shared(); //C2440
C2440 «инициализация» не может преобразовать из «std::shared_ptr» в «std::shared_ptr».
почему? Как я могу преобразоватьshared_ptr с помощью класса?

Подробнее здесь: https://stackoverflow.com/questions/781 ... with-class
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»