Zacząłem używać Visual studio code do c++, posiadam kompilator g++ w wersji 8.1 , jednak gdy używa się składni c++17 VSC wyświetla błędy i nie chce się kompilować przez komendę
g++ nazwa.cpp, działa natomiast z g++ -Wall -Wextra -pedantic -Wshadow -std=c++17 -Ofast -o nazwa nazwa.cpp - jednak nie do końca rozumiem tej komendy i wolałbym, aby kompilator nie wyświetlał błędów, które tak na prawdę nie są błędami. Co mam zrobić, żeby vsc obsługiwał mi c++17 ? Tu przykładowy kod :
#include <array>
#include <iostream>
#include <string_view>
#include <tuple>
#include <type_traits>
namespace a::b::c
{
inline constexpr std::string_view str{ "hello" };
}
template <class... T>
std::tuple<std::size_t, std::common_type_t<T...>> sum(T... args)
{
return { sizeof...(T), (args + ...) };
}
int main()
auto [iNumbers, iSum]{ sum(1, 2, 3) };
std::cout << a::b::c::str << ' ' << iNumbers << ' ' << iSum << '\n';
std::array arr{ 1, 2, 3 };
std::cout << std::size(arr) << '\n';
return 0;
}
Wyświetlają mi się takie błędy : namespace "std" has no member "string_view" itp.