Tema6_seccion5_CPP Flashcards

(12 cards)

1
Q

¿Cuándo se da el problema del diamante en c++ y como se soluciona?

A

Cuando una clase hereda de otras dos y estás a su vez lo hacen de una misma base. La solución es que las dos clases que tienen una misma base especifique herencia “virtual” para que se puede resolver esa “repetición” de miembros heredados

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Cómo podemos utilizar los operadores ya definidos en el lenguaje sobre nuestros propios objetos?

A

Sobrecarga de operadores

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Puede una clase totalmente independiente de otra, acceder directamente a los miembros privados de esta?

A

Si, siempre y cuando entre ellas haya una declaración de amistad

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Con que palabra reservada podemos crear clases genéricas o parametrizables?

A

Template

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Si un atributo vemos que tiene el modificador “mutable”, ¿Qué quiere decir?

A

Que su valor podrá ser modificado incluso aunque el método se haya definido como const

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Si tenemos un parámetro definido como “clase& param”, ¿Cómo se accede a sus miembros?

A

Con param.atributo o param.metodo()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Si tenemos un parámetro definido como “clase* param”, ¿Cómo se accede a sus miembros?

A

Con param->atributo o param->metodo()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Qué podemos encontrar en la libreria STL?

A
  • Clases contenedoras (stack, set, list, …)
  • Algoritmos (sort, find, count, binary_search, …)
  • Iteradores
  • Funciones (clases que han sobrecargado el operador() )
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Qué dos cosas hacen falta para poder usar el objeto “cout” para generar salida por pantalla?

A

include <iostream></iostream>

using namespace std;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Si queremos usar excepciones en C++, ¿tenemos que usar alguna clase base como en Java?

A

No, en C++ cualquier tipo puede ser utilizado en el throw, pero si existe la clase std::exception para ayudarnos a definir nuestra propia jerarquía de excepciones

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué dos forma existen para crear un objeto de la clase “persona”?

A
  1. Persona p(“pepe”,10)
  2. Persona* p = new Persona(“juan”,22)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Quién se encarga de estandarizar el lenguaje C++?

A

Su creador fue Bjarne Stroustup, pero ahora está dentro de la norma ISO 14882

How well did you know this?
1
Not at all
2
3
4
5
Perfectly