Нет. C ++ является статическим типизированным языком, для компилятора C ++ бессмысленно создавать объект полиморфно. Компилятор должен знать тип класса для создания объекта. Другими словами, какой тип объекта должен быть создан, это решение времени компиляции с точки зрения компилятора C ++. Если мы создадим конструктор virtual, компилятор отметит ошибку.
В прошлый раз, когда у меня возникла такая проблема, я на самом деле создал канал, запустил поток и использовал поток для записи данных в канал ... хотя вам придется просматривать вызовы операционной системы.
Возможно, есть и другие способы, такие как создание файла с отображением в памяти, но я искал что-то, что просто работало без большой работы и исследований.
РЕДАКТИРОВАТЬ: вы, конечно, можете изменить проблему на «как найти хорошее временное имя файла». Затем вы можете записать данные в файл и прочитать их обратно в: -)