Re[22]: Ошибка, если конструктор определен в h-файле (этюд?)
От: rg45 СССР  
Дата: 06.07.23 09:25
Оценка:
Здравствуйте, so5team, Вы писали:

S>Но мне кажется, что Class1 по любому должен создаваться через какую-то фабрику, а не просто как значение на стеке (или в агрегате).


Да и на стеке тоже должно воспроиводиться, почему нет. привожу ниже полный листинг моего варианта:

  Class1.h
#pragma once

#include <memory>

class Class1
{
public:

   Class1();
   ~Class1();

private:

   class Impl;

   std::unique_ptr<Impl> m;
};

  Class1.cpp
#include "Class1.h"

class Class1::Impl { };
Class1::Class1() { }
Class1::~Class1() { }

  main.cpp
#include "Class1.h"

int main()
{
   Class1 c;
}


Это успешная версия. После переноса конструктора, появляется ошибка.
--
Справедливость выше закона. А человечность выше справедливости.
Отредактировано 06.07.2023 9:26 rg45 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.