Articles of c #

Devolver la referencia constante a la variable local de una función

Tengo algunas preguntas sobre cómo devolver una referencia a una variable local desde una función: class A { public: A(int xx):x(xx) { printf(“A::A()\n”); } }; const A& getA1() { A a(5); return a; } A& getA2() { A a(5); return a; } A getA3() { A a(5); return a; } int main() { const A& […]

cadena c_str () vs. datos ()

He leído varios lugares en los que la diferencia entre c_str() y data() (en STL y otras implementaciones) es que c_str() siempre termina nulo mientras que data() no. Por lo que he visto en implementaciones reales, hacen lo mismo o data() llamadas a data() c_str() . ¿Que me estoy perdiendo aqui? ¿Cuál es más correcto […]

cómo dejar de parpadear C # winforms

Tengo un progtwig que es esencialmente como una aplicación de pintura. Sin embargo, mi progtwig tiene algunos problemas parpadeantes. Tengo la siguiente línea en mi código (que debería eliminar el parpadeo, pero no): this.SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.DoubleBuffer, true); mi código (menos las clases super y sub para las formas es el siguiente: using System; […]

Visual Studio 2010 Comstackción con la versión de Debug o Release de la biblioteca de un tercero, según si mi proyecto está siendo comstackdo ¿Build or Release?

He descargado varias bibliotecas de terceros (dlls) ahora para Visual Studio 2010 / C # y me he dado cuenta de que en el directorio de distribuciones \ bin suelen tener dos versiones Debug and Release. ¿Hay alguna manera de agregar estas bibliotecas como referencias al proyecto, pero usar Release build (cuando estoy construyendo una […]

Parallel.For (): actualiza la variable fuera del ciclo

Solo estoy viendo las nuevas características de .NET 4.0. Con eso, estoy intentando hacer un cálculo simple usando Parallel.For y un ciclo normal for(x;x;x) . Sin embargo, obtengo resultados diferentes aproximadamente el 50% del tiempo. long sum = 0; Parallel.For(1, 10000, y => { sum += y; } ); Console.WriteLine(sum.ToString()); sum = 0; for (int […]

¿Qué es útil sobre un parámetro de referencia a matriz?

Recientemente encontré un código como este: typedef int TenInts[10]; void foo(TenInts &arr); ¿Qué puede hacer en el cuerpo de foo() que es útil, que no podría hacer si la statement fuera: void foo(int *arr); // or, void foo(int arr[]); // or, void foo(int arr[10]); // ? Encontré una pregunta que pregunta cómo pasar una referencia […]

Enlazar colecciones seguras en .NET

¿Cuál es el estándar hoy en día cuando uno necesita una colección de hilos seguros (por ejemplo, Conjunto). ¿Lo sincronizo yo mismo o hay una colección intrínsecamente segura para subprocesos?

¿Por qué / cuándo usar `intptr_t` para el moldeado de texto en C?

Tengo una pregunta sobre el uso de intptr_t contra long int . He observado que el aumento de las direcciones de memoria (por ejemplo, a través de la aritmética del puntero manual) difiere según el tipo de datos. Por ejemplo, incrementar un puntero de char agrega 1 a la dirección de memoria, mientras que incrementar […]

¿Cómo funciona esta operación bit a bit para una potencia de 2?

Estoy viendo un código que debería ser trivial, pero mi matemática me está fallando miserablemente aquí. Aquí hay una condición que verifica si un número es una potencia de 2 usando lo siguiente: if((num != 1) && (num & (num – 1))) { /* make num pow of 2 */ } Mi pregunta es, ¿cómo […]

Cómo establecer el nombre de un hilo en Linux pthreads?

¿Hay alguna forma de configurar el nombre de un hilo en Linux? Mi objective principal es que sería útil durante la depuración, y también es bueno si ese nombre se expuso a través de, por ejemplo, /proc/$PID/task/$TID/…