Resultados da pesquisa a pedido "noexcept"

1 a resposta

Isso é permitido dentro de uma especificação noexcep

Tenho algum código que exija que eu use*this, mas quero que não seja amigável: struct foo; // Would actually be something with conditional noexcept void do_something(foo&); struct foo { void fn() noexcept(noexcept(::do_something(*this))) { ...

4 a resposta

Uma função noexcept ainda pode chamar uma função que lança no C ++ 17?

NoP0012R1 [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0012r1.html] , "Faça com que as especificações de exceção façam parte do sistema de tipos", eu vejo issonoexcept agora está se tornando parte do tipo de função. Não sei dizer se ...

1 a resposta

Existe algum ponto em declarar uma função excluída como noexcept?

Considere estas duas definições possíveis para uma classe: Anexo A: struct A { A() = delete; };Anexo A ′: struct A { A() noexcept = delete; }Existe algum ponto em declarar uma função excluída comonoexcept?

1 a resposta

Podemos nos referir a variáveis-membro em uma especificação noexcept?

Considere o seguinte snippet de código: template<class Tuple> class vector { public: typename Tuple::size_type size() const noexcept(noexcept(m_elements.size())) { return m_elements.size(); } private: Tuple m_elements; }; class tuple { public: ...

4 a resposta

Determinar se um construtor de uma classe base abstrata não é exceção?

No C ++ 11 e posterior, como determinar se um construtor de uma classe base abstrata énoexcept? Os seguintes métodos não funcionam: #include <new> #include <type_traits> #include <utility> struct Base { Base() noexcept; virtual int f() = 0; }; ...

1 a resposta

Aplicar "noexcept" na função std ::?

Esse código compila e executa, lançando oint: #include <functional> void r( std::function<void() noexcept> f ) { f(); } void foo() { throw 1; } int main() { r(foo); }No entanto, eu gostaria que o compilador rejeitasse a linhar(foo); Porquer só ...

3 a resposta

C ++, exceto para uma função que não gera exceções, mas pode causar uma falha na memória

Por exemplo, é bastante comum haver duas maneiras distintas de acessar elementos de uma matriz privada, sobrecarregando o operador de assinatura de matriz ou definindoat: T& operator[](size_t i) { return v[i]; } T const& operator[](size_t i) ...

1 a resposta

Programa com o construtor "noexcept" aceito pelo gcc, rejeitado pelo clang

O código: struct T { T() {} }; struct S { T t; S() noexcept = default; }; int main() { // S s; }O g ++ 4.9.2 aceita isso sem erros ou avisos, no entanto, o clang 3.6 e 3.7 reportam para a linha 7: error: exception specification of explicitly ...

2 a resposta

Para que serve o noexcept?

eu vi issoC ++ 11adicionou onoexcept palavra-chave Mas eu realmente não entendo por que isso é útil. Se a função é lançada quando não deveria ser lançada - por que eu gostaria que o programa travasse? Então, quando devo usá-lo? Além disso, ...

4 a resposta

noexcept, empilhamento e desempenho da pilha

Os seguintesesboço, projeto [http://aristeia.com/EC++11-14/noexcept%202014-03-31.pdf]do novo livro C ++ 11 de Scott Meyers (página 2, linhas 7-21) A diferença entre desenrolar a pilha de chamadas e possivelmente desenrolá-la tem um impacto ...