Вышел GCC 7.1
От: Шахтер Интернет  
Дата: 03.05.17 15:07
Оценка: +1
здесь

С++17

Буду пробовать...

Upd.

Ну, вроде работает. Ничего не поломали. Концепты тоже работают. Будем пробовать новые фичи.

--- inline variables ---

inline int CommonInt = 100 ;


Теперь можно инлайнить не только функции, но и переменные. Т.е. подобная декларация может быть включена в несколько единиц трансляции (например, через заголовок) без нарушения ODR.

--- Вывод типов для шаблонов классов ---

Теперь можно сделать удобный scope guard.

template <FuncArgType<> Func>
class ScopeGuard : NoCopy
 {
   Func func;

  public:

   explicit ScopeGuard(const Func &func_) : func(func_) {}

   ~ScopeGuard()
    {
     func();
    }
 };


  int x=12345;

  {
   ScopeGuard guard( [&x] () { x=0; } );

   Printf(Con,"#;\n",x);
  }

  Printf(Con,"#;\n",x);
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Отредактировано 04.05.2017 20:03 Шахтер . Предыдущая версия . Еще …
Отредактировано 03.05.2017 18:11 Шахтер . Предыдущая версия .
Отредактировано 03.05.2017 17:18 Шахтер . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.