Включение флага `-std = c ++ 14` в Code :: Blocks

Я установил Code :: Blocks для Windows и хочу скомпилировать код C ++ 14, как общие лямбды, но двоичную версию Code :: Blocks, из которой я установил codeblocks.org не поддерживает флаг
-std=c++14,

Как мне обновить компилятор и включить -std=c++14 флаг для Code :: Blocks?

9

Решение

Чтобы скомпилировать исходный код с использованием C ++ 14 в Code :: Blocks, вам, прежде всего, необходимо скачать и установить компилятор, поддерживающий функции C ++ 14.

Вот как вы можете сделать это в Windows:

  1. Скачать MinGW с Вот (конкретная сборка) или с официального сайта в выбрать варианты
  2. Извлеките его, например, в: C: \ (результат будет C: \ MinGW)
  3. Открытый код :: Блоки
  4. Зайдите в Настройки => Компилятор.
  5. Перейдите к «Исполняемые файлы Toolchain».
  6. В верхнем поле «Каталог установки компилятора» измените каталог на тот, куда вы распаковали компилятор. Например, C: \ MinGW.
  7. Измените все необходимые файлы в «Program Files», чтобы они соответствовали файлам в C: \ MinGW \ bin:

введите описание изображения здесь

  1. Прежде чем нажать «ОК», перейдите на крайнюю левую вкладку «Настройки компилятора».
  2. Выберите «Флаги компилятора».
  3. Для простоты щелкните правой кнопкой мыши в списке где-нибудь и выберите «Новый флаг»:

введите описание изображения здесь

  1. Введите следующее, нажмите «ОК» и отметьте поле только что созданного флага:

введите описание изображения здесь

  1. Наконец, вам нужно указать путь отладчика. Перейдите в «Настройки» => «Отладчик», нажмите «По умолчанию» слева и введите новый полный путь к исполняемому файлу:

введите описание изображения здесь


Теперь попробуйте скомпилировать программу с функциями C ++ 14:

#include <iostream>
#include <string>
using namespace std;

auto main() -> int
{
auto add_two([](auto x, auto y){ return x + y; });

cout << add_two("I"s, "t"s) << " works!" << endl;
}
37

Другие решения

Может ли скромный новичок сделать одно маленькое предложение? Небольшая модификация для тестирования кода C ++ 14, позволяющая запускать полученный файл .exe независимо от среды IDE, в которой он был создан, немного измененной тестовой программой:

 #include <iostream>
#include <string>

using namespace std;

auto main() -> int
{
auto add_two([](auto x, auto y){ return x + y; });

cout << add_two("I"s, "t"s) << " works!" << endl;

cout << "press enter to continue..." << endl;
cin.ignore(10, '\n');
cin.get();
}

Спасибо всем, мир всем коллегам, особенно Игорю Тандетнику.

-1

По вопросам рекламы [email protected]