Articles of c ++ faq

rand () devuelve los mismos valores cuando se llama dentro de una sola función

Soy un novato en C ++ y estoy perplejo en esto. Necesito llamar a esta función en mi función principal tres veces, pero cada vez me da el mismo resultado, es decir, pull_1, pull_2, pull_3 son lo mismo. ¿Qué debo hacer para que sean realmente aleatorios? string PullOne() { string pick; string choices[3] = {“BAR”, […]

¿Cuál es el punto de los indicadores de función?

Tengo problemas para ver la utilidad de los punteros de función. Supongo que puede ser útil en algunos casos (existen, después de todo), pero no puedo pensar en un caso en el que sea mejor o inevitable usar un puntero a la función. ¿Podría darnos algún ejemplo del buen uso de punteros a las funciones […]

Orden de evaluación de la lista de inicialización del constructor

Tengo un constructor que toma algunos argumentos. Supuse que se habían construido en el orden indicado, pero en un caso parece que se estaban construyendo a la inversa, lo que dio como resultado un aborto. Cuando invertí los argumentos, el progtwig dejó de abortar. Este es un ejemplo de la syntax que estoy usando. El […]

¿Uso correcto de stack y stack en C ++?

He estado progtwigndo por un tiempo pero ha sido principalmente Java y C #. Nunca tuve que administrar la memoria por mi cuenta. Recientemente comencé a progtwigr en C ++ y estoy un poco confundido sobre cuándo debo almacenar cosas en la stack y cuándo almacenarlas en el montón. Según entiendo, las variables a las […]

¿C ++ admite bloques “finalmente”? (¿Y de qué se trata este ‘RAII’?)

¿C ++ admite bloques ” finalmente “? ¿Cuál es el modismo de RAII ? ¿Cuál es la diferencia entre el modismo RAII de C ++ y el enunciado ‘using’ de C # ?

¿Cómo implementar algoritmos clasificadores clásicos en C ++ moderno?

El algoritmo std::sort (y sus primos std::partial_sort y std::nth_element ) de C ++ Standard Library es en la mayoría de las implementaciones una amalgama complicada e híbrida de algoritmos de clasificación más elementales , como sort de selección, ordenación por inserción, clasificación rápida , sort sort, o heap sort. Hay muchas preguntas aquí y en […]

¿Por qué se prefiere la clase enum a la enumeración simple?

Escuché a algunas personas recomendar utilizar clases enum en C ++ debido a su tipo de seguridad . Pero, ¿qué significa esto realmente?

¿Por qué debería el constructor de copia aceptar su parámetro por referencia en C ++?

¿Por qué un constructor de copia debe pasar su parámetro por referencia?

Cómo sobrecargar std :: swap ()

std::swap() es utilizado por muchos contenedores estándar (tales como std::list y std::vector ) durante la clasificación e incluso la asignación. Pero la implementación estándar de swap() es muy generalizada y bastante ineficiente para los tipos personalizados. Por lo tanto, la eficiencia se puede obtener al sobrecargar std::swap() con una implementación específica de tipo personalizado. Pero, […]

¿Cómo debo escribir ISO C ++ Estándar nuevo personalizado y eliminar operadores?

¿Cómo debo escribir los operadores new y delete personalizados conforme a la norma ISO C ++? Esto es a continuación de Sobrecargar nuevo y eliminar en las preguntas frecuentes sobre C ++ inmensamente iluminadoras, la sobrecarga del operador y su seguimiento. ¿Por qué debería uno reemplazar los operadores nuevos y eliminar por defecto? Sección 1: […]