Схоже, що в Ubuntu 18.04 за замовчуванням g ++ (версія 7.3.0) за замовчуванням працює у сумісному режимі C ++ 11. Я отримую деякі помилки в своїх старих кодах, які не сумісні з C ++ 11. Я встановив g ++ - 6 (версія 6.4.0), і програми добре складаються. Чи можна відключити режим C ++ 11 в g ++ - 7?
2
Насправді режим за замовчуванням GCC 6 вже C ++ 14 . GCC 7 додає підтримку C ++ 17; ймовірно, достатньо лише вимкнути цей C ++ 17 речей. Повертатися до C ++ 11 не потрібно. Повернення до C ++ 98 - це справді велике перевищення (недолік?)
—
MSalters
що ви робили в старих програмах, несумісних? Можливо, ви могли робити речі, які вам не дозволяли в першу чергу через помилки. У такому випадку ви не збираєтеся нічого отримувати від переходу на c ++ 98.
—
WHN
@snb: Або вони використовували
—
Гонки легкості в Орбіті
std::auto_ptr
, або вони використовували auto
його оригінальний вигляд, або у них зараз незаконні звуження конверсій, або вони використовували export
, або, або, або
@LightnessRacesinOrbit Більшість із них була б поганою практикою до C ++ 11.
—
WHN