Prueba simulada de C ++

Esta sección le presenta varios conjuntos de pruebas simuladas relacionadas con C++ Framework. Puede descargar estas pruebas simuladas de muestra en su máquina local y resolverlas sin conexión a su conveniencia. Cada prueba simulada se suministra con una clave de prueba simulada que le permite verificar la puntuación final y calificar usted mismo.

Prueba simulada de C ++ I

P 1 - El especificador de acceso predeterminado para los miembros de la clase es

A - público

B - privado

C - protegido

D - Ninguno de los anteriores.

Respuesta: B

Explicacion

Si un miembro o miembros aparecen en la clase sin el siguiente especificador de acceso, el valor predeterminado es privado.

Q 2 - Un carácter de trígrafo comienza con

A - #

B - ##

C -?

D - ??

Respuesta: C

Explicacion

Pocos personajes tienen representación alternativa y comienzan con ??. P.ej. Fro [equivalente es ?? (

Respuesta: D

Explicacion

C ++ admite todas las formas de herencia.

Respuesta: A

Explicacion

A medida que la función en línea se expande en la línea de llamada como una macro, se ejecuta más rápido.

Respuesta: D

Explicacion

Una función virtual pura no puede tener una definición.

P 7 - ¿Cuál es el resultado del siguiente programa?

#include<iostream>
using namespace std;
class abc { 
   void f();
   void g();
   int x;
};
main() {
   cout<<sizeof(abc)<<endl;
}

A - 12

B - 4

C - 8

D - Error de compilación

Respuesta: B

Explicacion

Solo las variables de miembro de clase constituyen el tamaño de la clase o su objeto.

#include<iostream>
using namespace std;
class abc { 
   void f();
   void g();
   int x;
};
main() {
   cout<<sizeof(abc)<<endl;
}

P 8 - ¿Cuál es el resultado del siguiente programa?

#include<iostream>
using namespace std;
class abc { 
   public: 
      static int x; 
      int i; 
      abc() {
         i = ++x;
      }
   };
int abc::x;
main() { 
   abc m, n, p;
   
   cout<<m.x<<" "<<m.i<<endl;
}

A - 3 1

B - 3 3

C - 1 1

D - 1 3

Respuesta: A

Explicacion

La variable miembro estática 'x' comparte memoria común entre todos los objetos creados para la clase.

#include<iostream>
using namespace std;
class abc { 
   public: 
      static int x; 
      int i; 
      abc() {
         i = ++x;
      }
   };
int abc::x;
main() { 
   abc m, n, p;
   
   cout<<m.x<<" "<<m.i<<endl;
}

P 9 - Un constructor puede ser virtual.

A - Verdadero

B - Falso

Respuesta: B

Explicacion

El propósito del constructor no se puede anular en la clase derivada, por lo tanto, el constructor no puede ser virtual.

Q 10 - Elija el operador que no se puede sobrecargar.

A - /

B - ()

C - ::

D -%

Respuesta: C

Explicacion

No se permite sobrecargar la resolución del osciloscopio (: :).

P 11 - ¿Qué operador debe sobrecargarse solo como función miembro?

A - _

B - _ _

C - ++ (versión postfix)

D - =

Respuesta: D

Explicacion

El operador de asignación sobrecargado hace un trabajo similar al constructor de copias y se requiere que esté sobrecargado como función miembro de la clase.

P 12 - ¿Cuál de las siguientes no es la palabra clave en C ++?

A - volátil

B - amigo

C - extiende

D - esto

Respuesta: C

Explicacion

Todo el resto son palabras clave válidas de C ++.

P 13 - ¿Cuál es el resultado del siguiente programa?

#include<iostream>
using namespace std;
class abc { 
   public: 
      int i; 
      abc(int i) { 
         i = i;
      }
};
main() { 
   abc m(5); 
   
   cout<<m.i;
}

A - 5

B - Basura

C - Error en la declaración i = i;

D - Error de compilación: 'i' declarado dos veces.

Respuesta: B

Explicacion

i = i, se asigna una variable miembro a sí misma.

#include<iostream>
using namespace std;
class abc { 
   public: 
      int i; 
      abc(int i) { 
         i = i;
      }
};
main() { 
   abc m(5); 
   
   cout<<m.i;
}

Respuesta: C

Explicacion

Si no se especifican especificadores de acceso para las variables / funciones de estructura, el valor predeterminado se considera público.

P 15 - De la siguiente clase, elija la definición adecuada de la función miembro f ().

template <class T>
class abc {
   void f();
};

A - plantilla <clase T>

    void abc <T> :: f () {}

B - plantilla <clase T>

    void abc :: f () {}

C - plantilla <T>

    vacío abc <clase T> :: f () {}

D - plantilla <T>

    void abc <T> :: f () {}

Respuesta: A

Explicacion

P 16 - Elija el uso del operador de eliminación respectivo para la expresión 'ptr = new int [100]'.

A - eliminar ptr;

B - eliminar ptr [];

C - eliminar [] ptr;

D - [] eliminar ptr;

Respuesta: C

Explicacion

Respuesta: B

Explicacion

Es un objeto de la clase istream.

Q 18 - El operador utilizado para acceder a la función miembro de una estructura usando su objeto.

A -.

B - ->

C - *

D - Ninguno de los anteriores.

Respuesta: A

Explicacion

De la misma manera que usamos el operador punto (.) Para acceder a los miembros de la clase, también se usa para acceder a los miembros de la estructura.

P 19 - En general, se incluye un archivo de encabezado definido por el usuario en la siguiente declaración.

A - #incluir "archivo.h"

B - #include <archivo.h>

C - #include <archivo>

D - #incluir archivo.h

Respuesta: A

Explicacion

Con la sintaxis como en (a) el compilador primero busca el archivo en el directorio de trabajo actual y luego en la ruta de inclusión predeterminada si no lo encuentra.

P 20 - ¿Qué tipo de datos se puede usar para contener un carácter ancho en C ++?

A - carácter sin firmar;

B - int

C - wchar_t

D - ninguno de los anteriores.

Respuesta: C

Explicacion

wchar_t es el tipo de datos con el que podemos contener caracteres Unicode.

P 21 - ¿Cuál es el especificador de almacenamiento que se utiliza para modificar la variable miembro aunque el objeto de clase sea un objeto constante?

A - automático

B - registrarse

C - estático

D - mutable

Respuesta: D

Explicacion

mutable es un especificador de almacenamiento introducido en C ++ que no está disponible en C. Un miembro de clase declarado con mutable es modificable aunque el objeto es constante.

P 22 - El siguiente operador se puede utilizar para calcular el valor de un número elevado a otro.

A - ^

B - **

C - ^^

D -Ninguno de los anteriores

Respuesta: D

Explicacion

No existe tal operador en C / C ++.

P 23 - Elija la declaración válida para sobrecargar ++ en forma de sufijo donde T es el nombre de la clase.

Operador A - T ++ ();

B - operador T ++ (int);

C - T & operador ++ ();

D - T & operador ++ (int);

Respuesta: B

Explicacion

El parámetro int es solo para significar que es el formulario de sufijo sobrecargado. No debería devolver la referencia según su comportamiento original.

P 24 - Podemos tener un número variable de argumentos para la forma sobrecargada del operador ().

A - Verdadero

B - Falso

Respuesta: A

Explicacion

Respuesta: B

Explicacion

Ambos operadores mencionados no se pueden sobrecargar.

Hoja de respuestas

Número de pregunta Clave de respuesta
1 segundo
2 C
3 re
4 UN
5 re
6 segundo
7 segundo
8 UN
9 segundo
10 C
11 re
12 C
13 segundo
14 C
15 UN
dieciséis C
17 segundo
18 UN
19 UN
20 C
21 re
22 re
23 segundo
24 UN
25 segundo