Preguntas etiquetadas con c++

265
Reenviar la declaración de una enumeración en C ++

Estoy tratando de hacer algo como lo siguiente: enum E; void Foo(E e); enum E {A, B, C}; que el compilador rechaza. He echado un vistazo rápido a Google y el consenso parece ser "no puedes hacerlo", pero no puedo entender por qué. ¿Alguien puede explicar? Aclaración 2: estoy haciendo esto ya...

265
Funciones miembro std :: string length () y size ()

Estaba leyendo las respuestas para esta pregunta y encontré que en realidad hay un método llamado length()de std::string(Siempre he utilizado size()). ¿Hay alguna razón específica para tener este método en std::stringclase? Leí MSDN y CppRefernce, y parecen indicar que no hay diferencia entre...

264
¿Cómo puedo leer y analizar archivos CSV en C ++?

Necesito cargar y usar los datos del archivo CSV en C ++. En este punto, realmente puede ser un analizador delimitado por comas (es decir, no se preocupe por escapar de nuevas líneas y comas). La necesidad principal es un analizador línea por línea que devolverá un vector para la siguiente línea...

262
convertir un char * a std :: string

Necesito usar un std::stringpara almacenar datos recuperados por fgets(). Para hacer esto, necesito convertir el char*valor de retorno de fgets()a std::stringa store en una matriz. ¿Cómo se puede hacer

262
Techo rápido de una división entera en C / C ++

Dados los valores enteros xy y, C y C ++, ambos devuelven como cociente q = x/yel piso del equivalente de coma flotante. Estoy interesado en un método para devolver el techo en su lugar. Por ejemplo, ceil(10/5)=2y ceil(11/5)=3. El enfoque obvio implica algo como: q = x / y; if (q * y < x)...

260
Cómo lanzar una excepción de C ++

Entiendo muy mal el manejo de excepciones (es decir, cómo personalizar las declaraciones de lanzamiento, intento y captura para mis propios fines). Por ejemplo, he definido una función de la siguiente manera: int compare(int a, int b){...} Me gustaría que la función arroje una excepción con algún...

258
¿Cómo se realiza una solicitud HTTP con C ++?

¿Hay alguna manera de hacer fácilmente una solicitud HTTP con C ++? Específicamente, quiero descargar el contenido de una página (una API) y verificar el contenido para ver si contiene un 1 o un 0. ¿También es posible descargar el contenido en una

257
Autocompletado en Vim

En pocas palabras, estoy en busca de un trabajo función de autocompletar para el editor Vim. He argumentado antes que Vim reemplaza por completo un IDE en Linux y, aunque eso es cierto, carece de una característica importante: autocompletar. Sé acerca de Ctrl+ N, integración de Cubetas Exuberantes...

257
arrojando excepciones de un destructor

La mayoría de la gente dice que nunca arroje una excepción de un destructor, ya que esto da como resultado un comportamiento indefinido. Stroustrup señala que "el destructor de vectores invoca explícitamente el destructor para cada elemento. Esto implica que si un destructor de elementos arroja, la...

256
¿Determinar si el mapa contiene un valor para una clave?

¿Cuál es la mejor manera de determinar si un mapa STL contiene un valor para una clave determinada? #include <map> using namespace std; struct Bar { int i; }; int main() { map<int, Bar> m; Bar b = {0}; Bar b1 = {1}; m[0] = b; m[1] = b1; //Bar b2 = m[2]; map<int,...

256
Puntero vs. referencia

Lo que sería una mejor práctica al dar a una función la variable original con la que trabajar: unsigned long x = 4; void func1(unsigned long& val) { val = 5; } func1(x); o: void func2(unsigned long* val) { *val = 5; } func2(&x); IOW: ¿Hay alguna razón para elegir uno sobre...

254
¿Beneficios de las funciones en línea en C ++?

¿Cuáles son las ventajas / desventajas de usar funciones en línea en C ++? Veo que solo aumenta el rendimiento del código que genera el compilador, pero con los compiladores optimizados de hoy, CPU rápidas, memoria enorme, etc. (no como en 1980 <donde la memoria era escasa y todo tenía que caber...

254
Propósito de las uniones en C y C ++

He usado los sindicatos antes cómodamente; hoy me alarmó cuando leí esta publicación y supe que este código union ARGB { uint32_t colour; struct componentsTag { uint8_t b; uint8_t g; uint8_t r; uint8_t a; } components; } pixel; pixel.colour = 0xff040201; // ARGB::colour is the active...