Resultados de la búsqueda a petición "language-lawyer"

1 la respuesta

Dado int ** p1 y const int ** p2 ¿está p1 == p2 bien formado?

Dada la siguiente función: void g(int **p1, const int**p2) { if (p1 == p2) { } }clang(volver a la versión 3.0) produce esta advertencia (verlo en vivo [http://melpon.org/wandbox/permlink/lCtOd2FagxDI9n2T]): warning: comparison of distinct ...

2 la respuesta

¿Por qué reverse_iterator define doblemente sus tipos anidados?

Parece que el adaptador iteradorreverse_iterator define doblemente la mayoría de sus tipos anidados. En particular, hereda públicamente destd::iterator que exponeiterator_category, value_type, difference_type, pointer yreference. Excepto ...

2 la respuesta

¿Por qué una clase no puede extender una clase anidada estática que ocurre dentro de ella?

Esta clase: public class OuterChild extends OuterChild.InnerParent { public static class InnerParent { } }No se puede compilar: $ javac OuterChild.java OuterChild.java:1: error: cyclic inheritance involving OuterChild public class OuterChild ...

2 la respuesta

Los corchetes angulares de cierre doble (>>) generan un error de sintaxis en un caso ESPECÍFICO

Eclipse (Luna, 4.4.2) me dice que tengo un error de sintaxis en la siguiente línea: static_cast<Vec<int, DIM>>(a.mul(b));Recordé que los corchetes angulares de doble cierre>> puede generar problemas con algunos compiladores, así que pongo un ...

4 la respuesta

¿Cuál es el resultado de a & b?

Esto es incómodo, pero el operador AND a nivel de bits se define en el estándar C ++ de la siguiente manera (énfasis mío). Se realizan las conversiones aritméticas habituales;el resultado es la función AND a nivel de bit de sus operandos. El ...

2 la respuesta

El programa se compila de manera diferente en 3 compiladores principales de C ++. ¿Cuál es la correcta?

Como un seguimiento interesante (aunque no de gran importancia práctica) a mi pregunta anterior:¿Por qué C ++ nos permite rodear el nombre de la variable entre paréntesis al declarar una ...

1 la respuesta

¿Es una clase con copy-constructor eliminado trivialmente copiable?

Es esta clase: class A { public: A() = default; A(const A&) = delete; };trivialmente copiable? (Al menos el sonido metálico parece pensar que sí (En Vivo [http://coliru.stacked-crooked.com/a/3bf899de8625279d])) En particular, sería A a,b; ...

1 la respuesta

¿Está std :: abs (0u) mal formado?

Dado el siguiente programa: #include <cmath> int main() { std::abs(0u) ; }gcc yclang no está de acuerdo sobre si esto está mal formado. Utilizandogcc conlibstdc++ el código se construye sin error o advertencia (verlo en ...

6 la respuesta

¿Esto evita UB

Esta pregunta es más académica, ya que no hay una razón válida para escribir la suya.offsetof macro más. Sin embargo, he visto esta implementación local emergente aquí y allá: #define offsetof(s, m) ((size_t) &(((s *)0)->m))Que es, técnicamente ...

9 la respuesta

¿Por qué el comportamiento de std :: memcpy sería indefinido para objetos que no son TriviallyCopyable?

Dehttp://en.cppreference.com/w/cpp/string/byte/memcpy [http://en.cppreference.com/w/cpp/string/byte/memcpy]: Si los objetos no sonTrivialmente cobrable [http://en.cppreference.com/w/cpp/concept/TriviallyCopyable](por ejemplo, escalares, ...