Quiz
Cuestionario C++
Create a free account to finish this quiz
Save your progress and see your final score.
Already have an account? Sign in
Questions in this quiz (34)
1Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
Base* const ptr = new Base;
std::cout << ptr -> get( );
}- A5
- B10
- CNinguno. Error de compilación
- D0
2Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
const Base* ptr = new Base;
std::cout << ptr -> get( );
}- ANinguno. Error de compilación
- B10
- C5
- D0
3Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
Base* const ptr = new Derivada;
std::cout << ptr -> get( );
}- ANinguno. Error de compilación.
- B10
- C5
- D0
4Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
Base ptr* = new Derivada;
std::cout << ptr -> get( );
}- A10
- B5
- C0
- DNinguno. Error de compilación
5Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
const Base* const ptr = new Base;
std::cout << ptr -> get( );
}- ANinguno. Error de compilación
- B10
- C5
- D0
6¿Qué métodos deben especificarse en toda plantilla (template) ?
- AUn constructor de copia y el operador de asignación
- BUn constructor por defecto
- CNo hay que especificar ningún método de forma obligatoria
- DTodos los constructores, el destructor y el operador de asignación
7La utilización de plantillas (template) de clases en el lenguaje C++ permite:
- ALa declaración de una jerarquía de clases
- BLa utilización en el código de la STL (Stanrdad Template Library)
- CEspecificar al compilador la forma de crear una familia parametrizada
- DLa definición de una familia parametrizada de funciones
8La utilización de plantillas (template) de funciones en el lenguaje C++ permite:
- ALa declaración de una jerarquía de clases
- BLa utilización en el código de la STL (Stanrdad Template Library)
- CEspecificar al compilador la forma de crear una familia parametrizada de clases
- DLa definición de una familia parametrizada de funciones
9En el lenguaje C++ las plantillas (template) permiten:
- ADefinir clases abstractas de las que no se pueden crear instancias
- BDefinir funciones y clases con tipos genéricos que se instancian en tiempo de ejecución
- CDefinir funciones y clases con tipos genéricos que se instancian en tiempo de compilación
- DReutilizacion de la definición de una función para alterar su comportamiento
10Al utilizar una plantilla (template), ¿cuando no es necesario indicar el tipo genérico?
- ASiempre hay que especificar el tipo de los parámetros de una plantilla
- BNunca hay que especificar el tipo de los parámetros al utilizar una plantilla
- CÚnicamente en las plantillas de clases cuando el compilador pueda deducir el tipo genérico sin ambigüedad
- DEn la plantillas de funciones cuando el tipo genérico se utilice como parámetro de la función y el compilador pueda deducirlo sin ambigüedad
11El código a ejecutar para manejar la ocurrencia de una excepción se encierra en un bloque:
- Aexception
- Btry
- Ccatch
- Dthrow
12Las excepciones identificadas en la librería estándar del lenguaje C++ derivan de la clase:
- Aruntime_error
- Blogic_error
- Cbad_execption
- Dexception
13El código a inspeccionar para identificar la ocurrencia de una excepción se encierra en un bloque:
- Athrow
- Bexception
- Ccatch
- Dtry
14Dada la definición de la clase, ¿cuál de las siguientes sentencias no se corresponde con una llamada correcta al constructor?
class dummy {
public:
dummy( ) { };
};- Adummy *a = new dummy;
- Bdummy a( );
- CTodas son correctas
- Ddummy a;
15Para definir que un método de la clase puede expandirse como una macro, se utiliza la palabra reservada:
- Ainline
- Bvirtual
- Cstatic
- Dfriend
16Para definir que un miembro de la clase es compartido por todas las instancias de clase se utiliza la palabra reservada:
- Avirtual
- Bstatic
- Cfriend
- Dinline
17¿Cuál de siguientes elementos del lenguaje C++ no permite especificar métodos?
- Astruct
- BTodos permiten especificar métodos
- Cclass
- Dunion
18Si se realiza herencia protected, los miembros public de la clase base:
- ASon protected en la clase derivada
- BSon public en la clase derivada
- CNo son accesibles en la clase derivada
- DSon private en la clase derivada
19Dada la definición de la clase, ¿cual de las siguientes códigos es incorrecto para el constructor?
class dummy {
int x, y;
public:
dummy(int, int);
};- Adummy::dummy(int i, int j) { x=i; y=i;}
- Bdummy::dummy(int i, int j) x(i), y(i) {}
- CTodas son correctas
- Ddummy::dummy(int i, int j) x(i) {y=i;}
20El lenguaje C++ solo permite la sobrecarga de funciones cuando:
- ASe utiliza el mismo nombre de función y la misma lista de parámetros pero distinto valor de retorno
- BSe utilizan el mismo nombre de función y distinto número de parámetros
- CSe utiliza el mismo nombre de función y el mismo número de parámetros con tipos distintos
- DSe utilizan el mismo nombre de función y lista de parámetros distinta
21¿Cuál es el resultado de la ejecución de la siguiente instrucción?
const char* const s1 = "ABC";
*s1 = 'x';
cout << s1;- AABC
- BNo se ejecuta. Hay error de compilación
- CX
- DXBC
22En el siguiente código, ¿qué valor tiene la variable arg tras la ejecución de la función f
( )?
void f(int *param) {
param = 10;
}
int main ( ) {
int arg = 1;
f (&arg);
}- A1
- BError en tiempo de ejecución.
- C10
- DError en compilación
23¿A dónde apunta el puntero s1 tras la ejecución de la siguiente instrucción?
char* const s1 = "ABC";
s1++;- ANo se ejecuta. Hay error de compilación.
- B'A'
- C'B'
- D'C'
24El lenguaje C++ permite especificar el valor por defecto en un parámetro de una función:
- ACuando todos los parámetros de la función tienen valor por defecto
- BTodos los parámetros siguientes en la lista también tienen valor por defecto
- CTodos los parámetros anteriores en la lista también tienen valor por defecto
- DCuando todos los parámetros de la función son constantes
25En el siguiente código, ¿qué valor tienen las variables antes de ejecutar la sentencia return?
int& min( int &a, int &b) {
return (a < b) ? a : b;
}
int main ( ) {
int i = 1, j =2;
min (i , j) = 3;
return 0;
}- AError de compilación. No se puede asignar valor a una función.
- Bi = 3, j = 2
- Ci =1, j = 2
- Di = 3, j = 3
26Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
const Base* const ptr = new Derivada;
std::cout << ptr -> get( );
}- A5
- B10
- C0
- DNinguno. Error de compilación
27Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
Base* ptr = new Base;
std::cout << ptr -> get( );
}- A5
- B10
- C0
- DNinguno. Error de compilación
28Dada la siguiente definición de clases, ¿que valor se visualiza en la función main( ) ?
#include <iostram>
class Base {
protected:
int x;
public:
Base( ) { x= 5;}
virtual int get() const { return 0; }
virtual int get() { return x; }
};
class Derivada: public Base {
protected:
int y;
public:
Derivada( ) {y= 10;}
int get( ) const { return y; }
};
int main( ) {
const Base* ptr = new Derivada;
std::cout << ptr -> get( );
}- A10
- B5
- CNinguno. Error de compilación
- D0
29En el siguiente código, ¿qué valor tiene la variable arg tras la ejecución de la función f
( )?
void f(int param) {
param = 10;
}
int main ( ) {
int arg = 1;
f (arg);
}- A1
- B10
- CIndefinido. Depende del compilador
- DError de compilación
30¿A dónde apunta el puntero s1 tras la ejecución de la siguiente instrucción?
const char *s1 = "ABC";
s1++;- A'A'
- B'B'
- CNo se ejecuta. Hay un error de compilación
- D'C'
31Declarar un miembro protected en una clase implica:
- AQue tiene la misma visibilidad que si fuese public y las clases derivadas no lo heredan
- BQue tiene la misma visibilidad que si fuese private y las clases derivadas no lo heredan
- CQue tiene la misma visibilidad que si fuese public y las clases derivadas lo heredan
- DQue tiene la misma visibilidad que si fuese private y las clases derivadas lo heredan
32Si se realiza herencia public, los miembros private de la clase base:
- ASon private en la clase derivada
- BSon public en la clase derivada
- CNo son accesibles en la clase derivada
- DSon protected en la clase derivada
33En el lenguaje C++ la ocurrencia de una situación excepcional que requiere de un tratamiento especial se invoca con la palabra clave:
- Athrow
- Btry
- Ccatch
- Dexception
34Dada la siguiente definición de plantilla (template) ¿cual de los siguientes usos de la plantilla es correcta?
template <class T, int N>
class miVector {
private:
T v[N];
public:
miVector(int n);
};- Aint N = 5;
miVector<int,N> v(5); - Bint N = 5;
miVector<int,N> v(N); - Cint N = 5;
miVector<int,5> v(N); - Dconst int N = 5;
miVector<int,N> v;
- Aint N = 5;
Information
- Description
- Quiz on Cuestionario C++, created by JORGE ACEVEDO DE LEÓN on 24/05/2020.
- Author
- JORGE ACEVEDO DE LEÓN
- Language
- Español
- Views
- 31
- Rating
- No ratings yet Rate this quiz