Articles of referencia

¿Qué es el tipo de devolución del operador de asignación?

Estoy empezando C ++. Estoy un poco confundido sobre el tipo de devolución de la asignación y el operador de desreferencia. Estoy siguiendo el libro C ++ Primer. En varias ocasiones, el autor dice que el tipo de devolución del operador de asignación hace referencia al tipo de operando de la mano izquierda, pero más […]

C ++ 11 auto: ¿y si obtiene una referencia constante?

Por favor, eche un vistazo al siguiente código simple: class Foo { public: Foo(){} ~Foo(){} Foo(const Foo&){} Foo& operator=(const Foo&) { return *this; } }; static Foo g_temp; const Foo& GetFoo() { return g_temp; } Intenté usar auto así: auto my_foo = GetFoo(); Esperaba que my_foo fuera una referencia constante a Foo , que es […]

¿Alguna vez ha usado PhantomReference en algún proyecto?

Lo único que sé sobre PhantomReference es, Si usa su método get() , siempre devolverá null y no el objeto. ¿De qué sirve? Al utilizar PhantomReference , asegúrate de que el objeto no pueda resucitar del método de finalize . Pero, ¿cuál es el uso de este concepto / clase? ¿Alguna vez ha usado esto […]

¿Cómo evitar la escritura de funciones de acceso duplicadas para referencias mutables e inmutables en Rust?

Algunas veces, me encontré con el escenario donde se necesita un método de acceso para las referencias mutables e inmutables. Para ~ 3 líneas no es un problema duplicar la lógica, pero cuando la lógica se vuelve más compleja, no es bueno copiar y pegar bloques grandes de código. Me gustaría poder volver a usar […]

Referencia de método de instancia y parámetros de Lambda

Tengo problemas para entender la syntax de una referencia de método, donde hay dos parámetros a y b , y la referencia es a un método de a en b . Por ejemplo, entiendo cómo Arrays.sort(personArray, comparators::compareByName); es equivalente a Arrays.sort(personArray, (o1, o2) -> comparators.compareByName(o1, o2)); porque en ese caso los parámetros lambda coinciden con […]

referencias constantes con typedef y plantillas en c ++

Escuché que los objetos temporales solo se pueden asignar a referencias constantes. Pero este código da error #include template t const& check(){ return t(); //return a temporary object } int main(int argc, char** argv){ const int &resCheck = check(); /* fine */ typedef int& ref; const ref error = check(); / *error */ return 0; […]

Vida útil de referencia constante de C ++ (adaptador de contenedor)

Tengo un código que se ve así: class T {}; class container { const T &first, T &second; container(const T&first, const T & second); }; class adapter : T {}; container(adapter(), adapter()); Pensé que la vida de referencia constante sería la vida útil del contenedor. Sin embargo, parece que de lo contrario, el objeto adaptador […]

¿Cómo hago una copia duplicada exacta de una matriz?

¿Cómo podría hacer un duplicado exacto de una matriz? Tengo dificultades para encontrar información sobre cómo duplicar una matriz en Swift. Intenté usar .copy() var originalArray = [1, 2, 3, 4] var duplicateArray = originalArray.copy()

reconstruir un árbol desde sus listas de preorden y postorder

Considere la situación en la que tiene dos listas de nodos de las cuales todo lo que sabe es que una es una representación de un recorrido de preorden de un árbol y la otra una representación de un recorrido de postorder del mismo árbol. Creo que es posible reconstruir el árbol exactamente a partir […]

Temas de Windows Visual: Galería de partes y estados?

Microsoft Windows permite a los progtwigdores dibujar elementos GUI usando la apariencia del tema actual usando funciones como DrawThemeBackground y DrawThemeText . Los elementos se especifican por Clase, Parte y Estado, como se describe en la página Partes y Estados en MSDN. Lamentablemente, la página no es muy informativa (¡en absoluto!). Entonces la pregunta es: […]