Resultados da pesquisa a pedido "c++17"
Quais são as mudanças, se houver, nas regras de initalização da vida útil do novo padrão?
Até onde eu saiba,memcpy em armazenamento não inicializadonão podes [https://stackoverflow.com/q/30114397/149138]ser usado com segurança para criar uma cópia do objeto de origem. No entanto, emesta ...
Guia de dedução variável não utilizado pelo g ++, utilizado pelo clang ++ - quem está correto?
Considere o seguinte código: template <typename... Types> struct list { template <typename... Args> list(Args...) { static_assert(sizeof...(Types) > 0); } }; template <typename... Args> list(Args...) -> list<Args...>; int main() { list l{0, 0.1, ...
Por que S :: x não é usado por odr?
Considere este exemplo decppreference [http://en.cppreference.com/w/cpp/language/definition]: struct S { static const int x = 1; }; void f() { &S::x; } // discarded-value expression does not odr-use S::xEu concordo que&S::x é umexpressão de ...
Falha na dedução do argumento do modelo de classe com a classe derivada
#include <utility> template<class T1, class T2> struct mypair : std::pair<T1, T2> { using std::pair<T1, T2>::pair; }; int main() { (void)std::pair(2, 3); // It works (void)mypair(2, 3); // It doesn't work }O acima está bem formado? É possível ...
Como o std :: visit funciona com o std :: variant?
Eu estou olhandostd:variant/std::visit doc aqui: http://en.cppreference.com/w/cpp/utility/variant/visit [http://en.cppreference.com/w/cpp/utility/variant/visit]e também pesquisou bastante no Google tentando entender a mágica por trásstd::visit ...
Redefinições de membros de dados estáticos constexpr são permitidas agora? (mas não const inline)?
O seguinte falha ao compilar sob gcc e clang no c ++ 14, mas é bem-sucedido no c ++ 1z: struct Cls { static constexpr int N = 0; }; constexpr int Cls::N; constexpr int Cls::N;O erro do C ++ 14 é previsível:redefinition of ‘constexpr const ...
Por que essa "variável externa indefinida" não resulta em um erro de vinculador no C ++ 17?
Eu compilei e executei o seguinte programa em um compilador C ++ 17 (Coliru). No programa, eudeclaradoaextern variável, masnão definiuisto. No entanto, o compilador não fornece umaerro de vinculador. #include <iostream> extern int i; // Only ...
Por que o `std :: byte` é uma classe enum em vez de uma classe?
std::byte é uma abstração que deve fornecer um acesso seguro do tipo (r) às regiões da memória em C ++, começando com o novo padrão 17. No entanto, é declarado dessa maneira de acordo ...
O que é a versão correta do llvm / clang / xcode?
esteessência [https://gist.github.com/yamaya/2924292]menciona que o xcode 9 publicou com 'Apple LLVM versão 9.0.0 (clang-900.0.38)', mas a última versão do llvm emllvm.org [http://releases.llvm.org/]é o LLVM 5.0.0. Qual é a relação entre eles?
ligações estruturadas e baseadas em intervalo; suprimir aviso não utilizado no gcc
Eu quero percorrer um mapa usando ligações de estrutura, ignorando a chave: for (auto& [unused, val] : my_map) do_something(val);Eu tentei opções diferentes com o gcc-7.2.0: // The warning is issued for ([[maybe_unused]] auto& [unused, val] : ...