Preguntas etiquetadas con c++

80
QVector vs QList

Tengo una lista de enteros sobre los que necesito iterar, pero una matriz es inadecuada. ¿Cuáles son las diferencias entre vectorsy? lists¿Hay algo que deba saber antes de elegir un tipo? Para ser claros, he leído los documentos de QT, pero este es el alcance de lo que sé: QList<T>,...

80
¿Qué es exactamente streambuf? ¿Como lo uso?

Estoy tratando de aprender un poco más sobre cómo funcionan los flujos de E / S en C ++, y estoy realmente confundido sobre cuándo usar qué. ¿Qué es exactamente un streambuf? ¿Cuándo utilizo a streambuf, en comparación con a string, an istreamo a vector? (Ya conozco los últimos tres, pero no...

80
Sobrecarga por tipo de retorno

Leí algunas preguntas aquí sobre SO sobre este tema que me parece confuso. Recién comencé a aprender C ++ y aún no he estudiado las plantillas o la sobrecarga de operadores y demás. Ahora, ¿hay una forma sencilla de sobrecargar class My { public: int get(int); char get(int); } sin...

80
std :: vector :: resize () frente a std :: vector :: reserve ()

Hay un hilo en la sección de comentarios de este post sobre el uso std::vector::reserve()vs std::vector::resize(). Aquí está el código original: void MyClass::my_method() { my_member.reserve(n_dim); for(int k = 0 ; k < n_dim ; k++ ) my_member[k] = k ; } Creo que para escribir elementos...

80
¿Cómo usar la cola de prioridad STL para objetos?

class Person { public: int age; }; Quiero almacenar objetos de la clase Person en una cola de prioridad. priority_queue< Person, vector<Person>, ??? > Creo que necesito definir una clase para la comparación, pero no estoy seguro. Además, cuando escribimos, priority_queue<...

80
Código duplicado usando c ++ 11

Actualmente estoy trabajando en un proyecto y tengo el siguiente problema. Tengo un método C ++ que quiero trabajar de dos formas diferentes: void MyFunction() { foo(); bar(); foobar(); } void MyFunctionWithABonus() { foo(); bar(); doBonusStuff(); foobar(); } Y me gustaría no...

80
Inicializar variables en una declaración "si"

Leí que en C ++ 17 podemos inicializar variables en ifdeclaraciones como esta if (int length = 2; length == 2) //execute something En vez de int length = 2; if (length == 2) //do something Aunque es más corto, afecta la legibilidad del código (especialmente para las personas que no...