C-Struct initialization at C++
От: Chorkov Россия  
Дата: 29.06.18 13:28
Оценка:
Есть ряд структур — реализаций некоторого интерфейса.

Используются они только в одном месте каждая. Хочется как-то воспользоваться новыми возможностями языка, чтобы упростить себе написание конструкторов для этих структур (избежать copy/paste всех членов структуры в конструкторе).

struct IInterface
{
   IInterface() {}
   virtual ~IInterface() {}
   virtual int foo () =0;
   //...
};

struct Implementation : IInterface
{
    int a;
    double b;
    
    int foo () { return a; }
        // ... 
};

Implementation a { 1, 3.14 };  // при наличии наследование - не работает.


Пока небыло наследования, я использовал С-ю инициализацию структур. Все работало. Нельзя ли как-то исхитриться применить тоже прием к реализации интерфейса?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.