You are on page 1of 12

CONTENIDO

Presentación …………………………………………….. 1
Preguntas Unidades I y II Clases y Constructores
Respuesta corta …………………………………. 2
Verdadero / Falso ……………………………. 4
Opción Múltiple …………………………………. 4
Preguntas Unidad III
Funciones Amigas y Sobrecarga
Respuesta corta …………………………………. 6
Verdadero / Falso ………………………………. 6
Opción Múltiple …………………………………. 7
Herencia
Respuesta corta …………………………………. 8
Verdadero / Falso ………………………………. 9
Opción Múltiple …………………………………. 9
Respuestas Unidades I y II
Respuesta corta …………………………………. 10
Verdadero / Falso ……………………………. 11
Opción Múltiple …………………………………. 11
Respuestas Unidad III
Funciones Amigas y Sobrecarga
Respuesta corta …………………………………. 11
Verdadero / Falso ………………………………. 12
Opción Múltiple …………………………………. 12
Herencia
Respuesta corta …………………………………. 12
Verdadero / Falso ………………………………. 12
Opción Múltiple …………………………………. 12
Banco de Reactivos de POO

U N I D A D E S I y II CLASES
RESPUESTA CORTA

1. Describa que es un objeto en C++


2. Indique las diferencias entre una estructura y una clase
3. Una clase es un tipo de datos que sirve para crear variables que son __________
4. Describa que es encapsulamiento ______________
5. ¿Qué es público y privado en una definición de clase?
6. Cuando se define una función miembro se debe incluir el nombre de ___________________ a la que pertenece.
7. Cuando varios conceptos (las variables y las funciones) se agrupan juntos en un solo paquete, a esto se le conoce como _______.
8. Los dobles dos puntos (::) se conocen como el operador de _______________.
9. Una función miembro que permite al usuario de la clase obtener el valor de un dato de tipo privado es ______________.
10. Si usted tiene una clase con una función miembro llamada “mostrar (ostream& salida)”, esta enviará los valores al parámetro de
flujo. ¿Cómo la llamaría para imprimir los datos a la pantalla?
11. ¿Que regresa un constructor? _______________.
12. Al constructor que no tiene parámetros se le llama constructor por _________________.
13. En la siguiente definición de un constructor de la clase, la parte que sigue a los dos puntos se le conoce como ___________
CtaInversion::CtaInversion() : saldo(0), interes(0.0), plazo(0) { }
14. Una función miembro que se llama automáticamente cuando se declara algún objeto de alguna clase es _______________.
15. ¿En dónde se debe usar “el operador de resolutor de ámbito o alcance”?
16. En la definición de la siguiente función, el mes y el día son miembros de la clase Fecha. Explique por qué no antecede al mes o al
día el nombre del objeto y el operador “punto”.
void Fecha::muestra()
{ cout <<”La fecha es: “ << anio << ’/’ << mes << ’/’ << dia<< endl; }
17. Una función miembro que permite al usuario de la clase alterar el valor de un dato tipo prívate es _____________________.
18. El nombre de un constructor es ____________.
19. Dada la definición de la clase siguiente, proporcione una definición de la función miembro :
class Termometro
{ public:
void pontemp(float pongrados, char CoF); // Pone las variables miembros con los valores de los argumentos
private:
float grados;
char escala; //(F)ahrenheit, (C)entrigrados };
20. Que persona necesita accesar a los miembros de la clase y porqué los miembros públicos deben ven ir primero en una definición
de la clase.
21. Explique porqué los datos miembros, deben ser puestos normalmente en la sección privada de una clase
22. Si se tiene la siguiente definición de estructura
struct clase1
{ int miembro1;
int miembro2; };
Declare a la variable ‘objeto1’ para tener este tipo de estructura. Inicialice a los miembros de ‘objeto1’, miembro1 y miembro2, a
tener los valores de 7 y 4 respectivamente. Hacer esto en la inicialización, no como asignación de los miembros.
23. La clase siguiente tiene dos constructores que se nombran igual.
class clase1
{ public:
// otros miembros
clase1();
clase1(float);
private:
float a; };
¿A qué constructor se llama en cada caso?

a) clase1 clase1(); b) clase1 y(1); c) clase1 z =clase1(1); d) clase1 w;

SALVADOR SUAREZ CASTRO [2] VERSION 2.1


Banco de Reactivos de POO

24. ¿Dada la definición siguiente de la clase, qué parecen hacer y que hacen realmente estas líneas del código?
class clase1
{ public:
// otros miembros
clase1();
clase1 (float r): a(r) {};
private:
float a; };

a) clase1 clase1(); b) clase1 y(4); c) clase1 z = clase1(8); d) clase1 w;


25. Dadas las siguientes definiciones de estructura y clases:
class Pareja struct punto3d class vector3d
{ public: { float x; { float x;
float a; float y; float y;
float b; float z; }; float z;
char id; punto3d pto; private:
private: float norma; };
float norma; }; vector3d vec;
Pareja par ;
¿Cuáles de las siguientes accesan legalmente (en main) a los miembros de la estructura o de la clase?
a) vec.x b) par.a c) pto.x d) vec.norma e) par.norma
26. Dada la declaración siguiente de una estructura y de la variable del tipo estructura:
struct Inversion
{ float saldo;
float tasainteres;
int plazo;
char inicial1;
char inicial2; };
Inversion ahorro1;
¿Cuál es el tipo de cada una de los siguientes identificadores?

a) ahorro1 b) ahorro1.saldo c) ahorro1.inicial2 d) ahorro1.tasainteres e) Inversion.plazo f) miahorro.inicial1


27. Suponga que su programa contiene la siguiente definición de clase.
class Clase1
{ public:
clase1( ) : var1( 0.0 ), var2( 0.0 ) { } // inicializa miembros a y b a aceros
clase1(float otravar1, float otra var2); // crea un objeto de la clase1, dando a ‘var1’ y ‘var2’ el valor de los
// argumentos
float davar1(); // obtiene el valor de var1
void incrementavar1();
private:
float var1; float var2;
void incrementavar2();
float davar2(); }; // obtiene el valor de var2

clase1 x, y (1.1, 2.2);

¿Cuáles de estas proposiciones son legales en su función main?

a) b = y.davar2( ); b) x=y;
c) v.incrementavar2(); d) if (x == y) cout << "Objetos identicos " << endl;
else cout << "Objetos diferentes" << endl;
e) a = x.davar1(); f) y.incrementavar1();

SALVADOR SUAREZ CASTRO [3] VERSION 2.1


Banco de Reactivos de POO

VERDADERO O FALSO

28. El operador ‘::’ asocia una función o dato miembro a una clase, mientras que el operador punto ‘.’ a una función o dato miembro
de un objeto.
29. Clases diferentes no pueden tener funciones miembro con el mismo nombre.
30. Una función miembro de una clase puede ser privada.
31. Los datos miembros de la clase son casi siempre públicos.
32. Es posible tener varias etiquetas “private” en una definición de clase.
33. El operador de asignación no puede ser utilizado con los objetos de cualquier clase.
34. Todos los constructores para una clase deben ser privados.
35. Los datos y funciones miembro privados de una clase se pueden accesar solo en la definición de las funciones declaradas en la
parte public: de la misma clase.

OPCIÓN MULTIPLE

36. Al definir una clase, se debe de indicar los tipos de las variable contenidas en la clase, y las
a) declaraciones de las funciones miembros de la clase b) la palabra clave private
c) las definiciones de otras clases d) nada mas
37. ¿Cuáles de las siguientes definiciones de funciones es el encabezado correcto para pedirEdad de la clase Persona?
a) int pedirEdad(); b) int pedirEdad() c). int Person:pedirEdad() d) int Person::pedirEdad()
38. Dada la siguiente definición y la declaración de la función miembro, ¿Cuál es la vía correcta de obtener datos privados?
class Persona
{ public:
void muestraPersona(ostream& sale);
private:
int edad; float pesokg; string rfc; };
void muestraPersona(ostream& sale)
{ ¿ Cuál de las siguientes sentencias iría aquí ? }

a) sale << fulano.edad << fulano.pesokg << fulano.rfc; b) sale << fulano;
c) sale << edad << pesokg << rfc; d) muestraPersona(person);
39. Una función miembro que permite al usuario cambiar los valores de los datos miembro se le conoce como:
a. function mutadora b. una mutación c. una función manipuladora d. una función accesora
40. ¿Por qué generalmente se desea hacer privados a los datos miembro en una clase?
a) de modo que nadie pueda utilizar la clase. b) respuestas c, d y e
c) para asegurar la integridad de los datos d) proveer datos abstractos
e) ocultar información f)
41. Si se tiene una clase ClasePersona, ¿Cuál de lo siguiente declara correctamente al constructor en la definición de la clase?
a. int MiClasePersona(); b. MiClasePersona;
c. ClasePersona::ClasePersona(); d. ClasePersona();
42. ¿Cuándo debe ser privada una función miembro de una clase?
a) si será utilizada solo por otros miembros de la clase b) siempre
c) solo si nunca es utilizada d) nunca, es ilegal hacer privadas a las funciones
miembro

SALVADOR SUAREZ CASTRO [4] VERSION 2.1


Banco de Reactivos de POO

43. ¿Dada la definición siguiente de la clase, cómo podría usted utilizar al constructor para asignar valores a un objeto de esta clase?
class Inversion
{ public: y la siguiente declaración de objeto
Inversion();
Inversion(float interes, float nuevoSaldo); Inversion MiInversion;
float daSaldo();
float daTasaint();
void ponTasaint(float interes);
void ponSaldo(float nuevoSaldo);
private:
float saldo, tasaint; };
a) MiInversion = Inversion ( float mitasadeint, float miSaldo);
b) MiInversion = Inversion ( mitasadeint, miSaldo);
c) MiInversion = Inversion { mitasadeint, miSaldo};
d) MiInversion = Inversion [ mitasadeint, miSaldo];
44. Si usted diseña una una clase con datos miembros privados, y no proporciona funciones accesoras y mutadoras , entonces:
a. byd b. los datos no pueden ser cambiados o vistos por nadie
c. ninguna de las anteriores d. la clase no puede ser usada
45. ¿Qué es lo que haría falta en la siguiente definición de clase?
class ClaseProducto
{ public:
ClaseProducto(int NuevoTipo, float NuevoCosto);
int daTipo();
float daCosto();
void ponTipo(int NuevoTipo);
void ponCosto(float NuevoCosto);
private:
int tipo;
float costo; };
a) funciones accesoras b) funciones mutadoras c) nada d) un constructor por default

SALVADOR SUAREZ CASTRO [5] VERSION 2.1


Banco de Reactivos de POO

UNIDAD III

FUNCIONES AMIGAS Y SOBRECARGA


RESPUESTA CORTA

1. ¿Qué es una función amiga?


2. ¿En qué se diferencian las funciones amigas de una clase y las funciones miembro?
3. ¿Cuál es la sintaxis en la declaración de la clase para indicar a una función amiga?
4. ¿Cuál es la sintaxis de la definición de la una función amiga?
5. ¿En dónde se definen a las funciones amigas de una clase?
6. Mencione las tres actividades del modificador de parámetro const
7. ¿Qué es la sobrecarga de operadores?
8. ¿Razón por la que no se necesita sobrecargar el operador de asignación para las clases?
9. Si una función implica manipular UN objeto, entonces es una función__________.
10. Si una función manipula MAS de un objeto entonces debe ser una función ________.
11. Colocar const antes de un parámetro pasado por referencia garantiza ____________.
12. Un operador que espera SOLO UN parámetro es llamado un operador _________________.
13. En las función amigas que necesitan pasar un objeto de la clase, para solo tener acceso al objeto, sin cambiar a los
miembros datos, entonces el objeto se debe pasar como _____________________.
14. Los operadores sobrecargados de extracción o de inserción debe devolver _________________________.
15. Un operador que espera DOS parámetros es llamado un operador ________________-

VERDADERO O FALSO

16. Se puede cambiar un operador de binario a unario o de unario a binario, sobrecargando el operador,
17. No se puede cambiar la asociatividad de un operador.
18. Dentro de la declaración de la clase se declaran las funciones amigas.
19. Con la sobrecarga se puede cambiar el comportamiento de +, * , - y / para los números flotantes .
20. Los argumentos de los operadores sobrecargados pueden ser de cualquier tipo.
21. No se pueden crear operadores nuevos .
22. Usted puede sobrecargar el operador ‘ . ’ .
23. Se puede hacer + tenga precedencia más alta que * al sobrecargar el operador.
24. Se permite que + sea un operador binario o unario en una sobrecarga del operador .
25. Los operadores sobrecargados deben ser amigos de la clase.
26. Las funciones constantes pueden invocar a las funciones accesoras de la clase que sean públicas.
27. Las funciones constantes pueden llamar a las funciones públicas mutadoras de la clase.
28. Si se tiene funciones accesoras y mutadoras en la clase, no debe tener funciones amigas.
29. Todos los operadores pueden ser sobrecargados
30. Las funciones amigas son miembros de la clase

SALVADOR SUAREZ CASTRO [6] VERSION 2.1


Banco de Reactivos de POO

OPCIÓN MULTIPLE

31. ¿Qué operador no puede ser sobrecargado?


a) + b) ( ) c) == d) . e) >>
32. Al sobrecargar los operadores >> y << ¿Qué objeto debe ir primero ?
a) el objeto b) el de flujo c) no importa el orden d) ninguna de las
anteriores
33. Dada la siguiente definición de clase y de la función amiga:
class miClase private:
{ public: int q;
miClase():q(0){ } };
miClase(int x):q(x){ } int su(miClase w , miClase z )
int k1(); { return ( w.q +z.q); }
friend int su( miClase , miClase ); miClase a, b, c;

¿Cuáles de las siguientes son accesos legales en main a los miembros de la clase miClase?
a) a.miClase(); b) a.k1(); c) b.q d) b.su(b ) e) su(b,a);
34. ¿Cuáles funciones miembro permiten que el compilador realice la conversión automática de tipo a uno diferente a la
clase?
a) Las mutadoras b) Esto sucede ya c) La sobre carga de d) Esto no se puede hacer.
automáticamente. constructores.
35. ¿Cuántos parámetros hay en un operador binario implementado como amigo?
a) 0 b) 1 c) los que d) 2
necesite
36. Para sobrecargar funciones con nombres simbólicos (como + - / <<), usted debe utilizar la palabra clave _________
antes del nombre simbólico.
a) operator b) referencia c) const d) new

37. ¿Si tenemos una selección completa de funciones accesoras y mutadoras, por qué tendríamos funciones amigas?
a) ninguna respuesta b) no debe c) acceso eficiente a los miembros d) las funciones amigas usan a
satisfactoria tenerlas. de los datos privados las accesoras o mutadoras de
todos modos
38. ¿Por qué una función amiga recibe al objeto de la clase como parámetro por referencia?
a) respuestas c) y d) b) Para que la función amiga NO cambie los valores de
los datos miembros
c) acceso eficiente a los miembros de los datos privados d) Para que la función amiga cambie los valores de los
datos miembros
39. Ya que las funciones de accesoras de una clase no modifican a los miembros dato del objeto, ¿Qué modificador debe
tener la función?
a) eso es falso b) referencia c) const d) private

40. ¿Quién puede tener acceso a datos privados en una clase?


a) las amigas de la b) ninguna respuesta c) respuestas a) y e) d) cualquiera e) los miembros de
clase la clase
41. Los operadores pueden sobrecargarse como:
a) amigos de la b) sin ser amigo o c) miembros de la d) funciones e) todas las
clase miembro clase independientes respuestas

SALVADOR SUAREZ CASTRO [7] VERSION 2.1


Banco de Reactivos de POO

42. ¿En la clase siguiente cuántos miembros (los datos y las funciones) tiene?
class Coordenadas( )
{ public:
Coordenadas( );
Coordenadas(float, float);
Coordenadas(float);
float dameNumerador( );
float dameDenominador( );
friend Coordenadas suma(Coordenadas, Coordenadas);
friend void muestra(ostream& sale, const Coordenadas& objeto);
private:
float coordenadax;
float coordenaday; };
a) 7 b) 6 c) 5 d) 9 e) 8

UNIDAD III
HERENCIA
RESPUESTA CORTA

43. ¿Qué es herencia de clases?


44. La capacidad de asociar múltiples significados al nombre de una función es llamado __________.
45. ¿Qué significa el término herencia publica?
46. ¿Quiénes pueden acceder a los miembros públicos de la clase base o padre?
47. ¿Quiénes pueden accesar a los miembros etiquetados como pretected?
48. Mencione la ventaja de la herencia en la Programación Orientada a Objetos.
49. ¿Se pueden heredar las funciones miembro privadas de la clase base a las derivadas?
50. ¿Cómo es el constructor de la clase derivada y en donde usa al constructor de la clase padre?
51. Cuál es la sintaxis general para declarar clases derivadas
52. ¿Qué es redefinir una función?
53. ¿Qué es sobrescribir una función?
54. ¿Cómo se le llama a la propiedad de implementar el polimorfismo hasta el momento en que la ejecución elija cual
versión de una función emplear?
VERDADERO O FALSO
55. Los constructores NO son heredables a las clases derivadas.
56. Los destructores son heredables a las clases derivadas.
57. Los miembros heredados nunca se declaran en las clases derivadas.
58. Si el constructor de la clase Base no es explícitamente llamado en definición de la clase derivada se produce un error.
59. La clase derivada automáticamente obtiene todas las variables miembro de la clase Base.
60. Si Aes antecesor de B, B no puede accesar a los miembros privados de A sin importar el tipo de herencia.
61. La clase base tiene todo lo de la clase derivada.
62. Si la clase C1 es derivada de la clase B1, entonces c1 tiene algunos de los miembros de B1 mas otros definidos en C1.
63. La clase derivada puede definir variables y funciones miembro distintas a las de la clase base.
64. No se hereda el constructor copia de la clase base a la clase derivada.

SALVADOR SUAREZ CASTRO [8] VERSION 2.1


Banco de Reactivos de POO

OPCIÓN MULTIPLE

65. Seleccione la sintaxis correcta para declarar una clase derivada H1 con herencia pública de una clase base B1
a) class B1 : public class H1 { …… }; b) class H1 : public B1 { …… }; c) class B1 : public H1 { … };
d) public class H1 : class B1 { …… }; e) ninguna de las anteriores
66. ¿Otra forma de nombrar a las clases hijas?
a) subclases b) clase descendiente c) clase derivada d) todas las anteriores e) ninguna de las mencionadas
67. Suponga que la clase Nieto es derivada de la clase Padre que a su vez fue derivada de la clase Abuelo. Cuando se declara un
objeto de la clase Nieto, tres constructores serán llamados: Padre, Nieto, Abuelo. ¿En qué orden son llamados los constructores?

a) Abuelo, Nieto, b) Padre, Abuelo, c) Nieto, Abuelo, d) Padre, Abuelo, e) Abuelo, Padre,
Padre. Nieto. Padre. Nieto. Nieto

68. ¿Quiénes NO pueden accesar o modificar a las variables miembro protegidas de la clase Base?
a) las funciones amigas de la clase derivada
b) las funciones miembro de la clase derivada
c) las funciones mutadoras de la clase base
d) las funciones ajenas a la clase derivada y a la clase base
69. ¿En qué caso se debe tener funciones virtuales?
a) cuando las clases derivadas necesitan redefinir la función de la clase base.
b) cuando las funciones son de un operador.
c) cuando la clase derivada emplea una la función de la clase base.
d) cuando se emplean miembros protegidos como parámetros.
70. Si la clase Nieto es derivada de la clase Padre y esta a su vez fue derivada de la clase Abuelo. Al destruir un objeto de la clase
Nieto, tres destructores serán llamados: ~Padre, ~Nieto, ~Abuelo. ¿En qué orden son llamados los destructores?

a) Abuelo, Nieto, b) Padre, Abuelo, c) Nieto, Padre, d) Padre, Abuelo, e) Abuelo, Padre,
Padre. Nieto. Abuelo Nieto. Nieto

71. Dada la declaración siguiente en la clase base, ¿Cuál declaración en la clase derivada es polimórfica?
virtual void muestra(ostream& salida);
a) virtual void muestra( );
b) virtual void print(ostream& sale);
c) void print(ostream& sale);
d) void print( );
e) b) yc)
72. Dada la siguiente herencia de clases

class Dady class Child : public Dady


{ public: { public:
Dady(); Child();
Dady(float , int ); float norma();
float media( ); private:
void muestra( ); void intercambia();
private: };
float a,b;
int n;
};

¿Cuántos miembros públicos tiene un objeto de la clase Child?

a) 4 b) 3 c) 5 d) 6 e) 2

SALVADOR SUAREZ CASTRO [9] VERSION 2.1


RESPUESTAS A LOS Banco de Reactivos de POO

U N I D A D E S I y II FUNDAMENTOS
RESPUESTA CORTA

1. Es una variable que además de tener valores tiene funciones como miembros.
2. En una estructura todos los miembros son públicos y solo son datos; en una clase puede haber datos o funciones como miembros,
los miembros privados son inaccesibles para cualquier función a excepción de las funciones miembro de la clase, o a menos que
sean declarados como públicos.
3. Objetos.
4. Combinar varias cosas: como variables y funciones de un objeto de alguna clase.
5. En una definición de clase, cualquier función o dato miembro colocado después del especificador private: solo podrá se accesado
en la declaración de las funciones miembro de la clase; Los miembros que siguen al especificador public: y antes de cualquier
otro especificador pueden ser accesados por cualquier definición de función.
6. La clase.
7. Encapsulamiento.
8. Ámbito o resolutor de alcance.
9. Función accesora.
10. mostrar(cout);
11. Nada ni siquiera void.
12. Por defecto o default.
13. De inicialización.
14. El constructor por default.
15. En la definición de una función miembro de una clase, bajo el formato siguiente
tipoRegreso nombreClase::nombre_Funcion(listaParametros)
16. Porque los miembros (datos y funciones) de la clase pueden ser accesados en las definiciones de la clase son hacer referencia a la
clase que pertenecen y porque no hay forma de saber que objeto será sido creado por el programa
17. Función mutadora.
18. El mismo de la clase.
19. void Termometro::pontemp(float pongrados, char CoF)
{ grados=pongrados;
escala=CoF; }
20. El usuario de la clase se interesa en los miembros públicos. El usuario no puede tener acceso a los miembros privados, ya que no
tiene ningún uso (directo) verdadero para él. Por lo que los miembros públicos deben ser puestos primero en una clase.
21. Al definir cualquier clase esta decide que funciones pueden accesar a los miembros privados de la clase, asegurando el control y
la integridad de los datos. en caso contrario el usuario podría corromperlos (datos y miembros).
22. clase1 objeto1={7,4};
23. .
a) No se está llamando al constructor, se está llamando a una función que se llama igual que un constructor. Error.
b) Llama al constructor clase1:clase1(int), constructor con parámetros.
c) Es un llamado explícito al constructor clase1:clase1(int).
d) Llamado apropiado para invocar al constructor por defecto para el objeto w.

SALVADOR SUAREZ CASTRO [10] VERSION 2.1


RESPUESTAS A LOS Banco de Reactivos de POO

24. .
a) Se declara a una función ‘clase1’ sin argumentos que regresa un objeto clase1. Se puede confundir con declarar un objeto
clase1 inicializado por el constructor por default.
b) ‘y’ es un objeto clase A, inicializado por el constructor clase1:clase1 (int), miembro a=4.
c) Un llamado explícito al constructor clase1:clase1 (int), constructor con argumentos. Miembro a del objeto y igual a 8.
d) Llamado correcto al constructor por default
25. .
a) Incorrecto, todos los miembros de la clase vector3d son privados. Solo se permite en las definiciones de las funciones miembro.
b) Correcta, a esta declarada como publica en la clase Pareja.
c) Correcto los miembros en una estructura punto3d son públicos a menos que se especifique lo contrario.
d) Incorrecta, todos los miembros de la clase vector3d son privados. Solo se permite en las definiciones de las funciones miembro.
e) Incorrecta, es miembro privado en la declaración de la clase Pareja.
26.

a) Inversion b) flotante c) carácter d) flotante e) entero f) no declarada

27.
a) Es ilegal, ya que es miembro privado
b) Es correcto copiar objetos de la misma clase
c) No permitido es una función privada
d) Es ilegal comparar objetos con el operador “==” (en estas unidades no se ve sobrecarga de operadores)
e) Permitido es una función publica
f) Permitido es una función publica

VERDADERO O FALSO

28. VERDADERO 29. FALSO 30. VERDADERO 31. FALSO


32. FALSO 33. FALSO 34. FALSO 35. VERDADERO

OPCIÓN MULTIPLE

36. a) 37. d) 38. c) 39. a) 40. b) 41. d) 42. a) 43. b) 44. a) 45. d)

UNIDAD III AMIGAS Y SOBRECARGA


RESPUESTA CORTA

1. Es aquella función que puede accesar a los miembros privados de la clase en la que está declarada como amiga.
2. Las funciones amigas se definen como cualquier función común, dentro de la declaración de la clase deben ser declaradas con la
palabra clave friend, se invocan sin hacer uso del operador punto. Las funciones miembro si están definidas fuera de la clase
deben indicar la clase a la que pertenecen y usar el operador de ámbito, al ser llamadas se usa el nombre del objeto y el operador
punto.
3. friend tipodevuelto nombrefuncion(listado de tipo [e identificadores de parámetros] );
4. Como cualquier función normal tipodevuelto nombrefuncion(listado de tipo e identificadoresde parámetros);
5. Fuera de cualquier otra función, ya que son globales a menos que pertenezcan a otra clase.
6. .
a) es una promesa al compilador de no intentar escribir código que realice cualquier cambio.
b) solicita al compilador que garantice cumplir esta promesa.
c) el uso de la palabra clave const no se puede negociar, transformar o adaptar
7. La implementación de código para emplear los operadores necesarios para manipular objetos de alguna clase especifica acorde al
comportamiento que se espera de ellos.
8. Porque el compilador provee automáticamente un operador de asignación para copiar los miembros del objeto

SALVADOR SUAREZ CASTRO [11] VERSION 2.1


RESPUESTAS A LOS Banco de Reactivos de POO

9. Miembro
10. Amiga
11. Que el objeto no será modificado en sus miembros.
12. Unario
13. Referencia constante
14. Una referencia a flujo (&ostream o &istream).
15. Binario.

VERDADERO O FALSO

16. FALSO 17. VERDADERO 18. VERDADERO 19. FALSO 20. FALSO
21. VERDADERO 22. FALSO 23. FALSO 24. VERDADERO 25. FALSO
26. VERDADERO 27. FALSO 28. FALSO 29. FALSO 30. FALSO

OPCIÓN MULTIPLE

31. d) 32. b) 33. b) y e) 34. c) 35. d) 36. a)


37. c) 38. a) 39. c) 40. c) 41. e) 42. a)

UNIDAD III HERENCIA


RESPUESTA CORTA
43. La propiedad de reusabilidad de código para crear clases derivadas (hija) partiendo de otra clase base (padre)
44. Polimorfismo
45. Efecto del especificador de acceso: los miembros públicos de la clase base pueden ser accesados por las clases derivadas.
46. Solo las funciones miembro de la clase base.
47. Los miembros de la clase base, las clases derivadas de la base y las funciones amigas de la clase base y derivada.
48. La abstracción y reusar código: se modelan mejor los problemas en la programación y rasgos comunes en objetos corresponderían
a segmentos de código común.
49. No.
50. El constructor de la clase base es llamado en la sección de la lista de inicialización , o es llamado por defecto en caso que no sea
llamado.
51. .

class Base class Derivada : public Base


{ public: { public:
Base(); Derivada( );
/* otros miembros */ /* otros miembros */
}; };
Derivada::Derivada( ): Base ( ) { }
52. Cuando tanto la clase Base como la Derivada tienen una función con la misma firma, pero en la clase base no se declara como
virtual, entonces la clase derivada redefine (la modifica/adapta) la función de la clase base.
53. Cuando tanto la clase Base como la Derivada tienen una función con la misma firma, pero en la clase base se declara virtual, la
función de la clase derivada reemplaza a la de la base.
54. Vinculación postergada, vinculación dinámica.

VERDADERO O FALSO

55. VERDADERO 56. FALSO 57. FALSO 58. FALSO 59. VERDADERO
60. VERDADERO 61. FALSO 62. FALSO 63. VERDADERO 64. VERDADERO

OPCIÓN MULTIPLE

65. b) 66. d) 67. e) 68. d) 69. a) 70. e) 71. e) 72. a)

SALVADOR SUAREZ CASTRO [12] VERSION 2.1

You might also like