MCQs de C++ (preguntas de opción múltiple)

MCQs de C++ (preguntas de opción múltiple)

  1. Bienvenido/a a la página de preguntas de opción múltiple (MCQs) de C++ en MCQss.com. Aquí encontrarás una amplia selección de preguntas relacionadas con el lenguaje de programación C++. Haz clic en las opciones de respuesta para comprobar si son correctas o incorrectas.

C++ es un lenguaje de programación ampliamente utilizado en el desarrollo de software. Tiene poderosas capacidades y se aplica en diversos campos, como el desarrollo de aplicaciones, juegos, programación de sistemas y más.

Para aprender C++, es importante comprender los fundamentos del lenguaje, como los tipos de datos, operadores, funciones, clases y herencia. Además, el conocimiento de conceptos de programación orientada a objetos será útil en el desarrollo de programas en C++.

Los MCQs gratuitos de C++ en MCQss.com te ayudarán a ampliar tus conocimientos y prepararte para exámenes, entrevistas y otras evaluaciones. Proporcionan una excelente oportunidad para practicar y mejorar tu competencia en la programación en C++.

1: ¿Qué significa OOD?

A.   Operación de objetos en diseño

B.   Diseño orientado a objetos

C.   Diseño demasiado objetivo

D.   Base de datos orientada a objetos

2: ¿Qué es la salida del siguiente programa? #include & lt; iOStream & gt; int main () {doble x = 1.0; para (int i = 0; i & lt; 3; ++ i) x *= 0.1; std :: cout & lt; & lt; x * 1e3 - 1; }

A.   Siempre 0.

B.   Depende de la doble implementación, generalmente no exactamente cero.

C.   Siempre no 0.

3: estructurar a {int n; }; A a; ¿Cuál es la visibilidad de A.N?

A.   privado

B.   protegido

C.   público

D.   La visibilidad se define solo para clases.

4: std :: make_heap () convierte un rango en un montón y std :: sort_heap () convierte un montón en una secuencia ordenada.

A.   verdadero

B.   FALSO

5: Si tiene dos funciones de C ++ diferentes que tienen el mismo nombre pero diferentes tipos de parámetros, se llama ...

A.   Funciones en línea.

B.   funciones recursivas.

C.   sobrecarga de funciones.

6: ¿Cuál de los siguientes es una declaración de declaración de variable válida?

A.   int a; b; C;

B.   int a, b, c;

C.   int a:

7: Las declaraciones de C ++ están separadas por este símbolo:

A.   Símbolo hash (#)

B.   Colon (:)

C.   Semicolón (;)

D.   Señal de adición (+)

8: ¿Cuál de las siguientes es una declaración de función C ++ válida que no devuelve un valor?

A.   int myfunction (int a, int b)

B.   MyFunction (int a, int b)

C.   nulo myfunction (int a, int b)

9: ¿Cómo se declara una variable entera x en C ++?

A.   declarar x como entero;

B.   int x;

C.   x int;

D.   int & lt; x & gt ;;

E.   x es entero;

10: ¿Cuál de los siguientes no es una estructura de bucle?

A.   parar cuando bucle

B.   hacer mientras bucle

C.   en bucle

11: ¿Cuál de los siguientes no es un tipo de datos fundamental en C ++?

A.   carbonizarse

B.   ancho

C.   bool

12: ¿Cuál de los siguientes operadores a continuación le permite definir las funciones de los miembros de una clase fuera de la clase?

A.   ?

B.   ,

C.   :%

D.   ::

13: ¿Cuál de los siguientes no es un tipo primitivo C ++?

A.   En t

B.   real

C.   flotar

D.   doble

14: ¿Cuál de las siguientes afirmaciones prueba para ver si la suma es igual a 10 y el total es inferior a 20, y si es así, imprime la cadena de texto "incorrecta"?

A.   Ninguna de estas opciones

B.   if ((sum == 10) || (total <20)) printf (

C.   if ((sum == 10) && (total <20)) printf (

D.   Ctrl+Alt+del

15: Elija la declaración de función que usaría si no necesitara devolver ningún valor.

A.   MyFunction (nulo)

B.   nulo myFunction ()

C.   myFunction ()

16: ¿Cuál de las siguientes es una palabra reservada en C ++?

A.   CARBONIZARSE

B.   cardillo

C.   personaje

D.   Carbonizarse

17: ¿Qué declaración asigna a la variable A la dirección de la variable B?

A.   a = b;

B.   a = & b;

C.   a = *b;

18: ¿Cuál es una declaración de comentarios válida en C ++?

A.   Ambos

B.   / * Este es un comentario */

C.   // Este es un comentario

19: Un puntero vacío es un tipo especial de puntero que indica la ausencia de un tipo para el puntero.

A.   Verdadero

B.   FALSO

20: ¿Qué significa la siguiente declaración? const int a = 50;

A.   El valor de A no puede cambiar de 50.

B.   El valor inicial de A es 50 pero puede cambiarlo.

C.   ninguno de esos

21: En C ++, debe comenzar un comentario de una sola línea

A.   un liderazgo //.

B.   todos estos

C.   un liderazgo /**.

22: ¿Cuál es el valor de I después de la siguiente declaración (s)? int i (4.36);

A.   4

B.   4.36

C.   4.4

D.   5

23: En la siguiente línea de código C ++, int foo [50]; ¿Qué representa el número 50?

A.   El valor entero máximo que se puede colocar en la matriz.

B.   El valor inicial del primer elemento de matriz.

C.   El número de elementos enteros la matriz deberá contener.

24: La función PrintMsg no requiere ningún argumento. Elija la declaración que llama a la función.

A.   printmsg ();

B.   void printmsg ();

C.   printmsg;

25: ¿Se pueden sobrecargar los constructores?

A.   Sí

B.   No

C.   Depende de la situación.

26: ¿Cuál es una ventaja para usar plantillas de C ++?

A.   reducir la duplicación de código

B.   Las plantillas son compatibles

C.   todos estos

D.   Aumentar la flexibilidad del código

27: ¿Cuál es (son) un ejemplo (s) de prototipo (s) de función C ++ válido?

A.   int myFunction (int a, int b);

B.   todos estos

C.   int myFunction (int, int);

28: Las clases pueden contener variables de miembros estáticos que son globales para la clase y ...

A.   ninguno de esos

B.   Se puede acceder por todos los objetos de la misma clase.

C.   Sus valores cambiarán para cada objeto de la misma clase.

29: ¿Qué hace el operador SizeOf (Arg)?

A.   Devuelve el valor máximo de Arg

B.   Devuelve el tamaño en bytes de arg

C.   Devuelve la longitud en los personajes de Arg.

30: ¿Cuál es la diferencia entre una clase y una estructura?

A.   Puede declarar funciones en una clase, no puede declarar funciones en una estructura.

B.   Ellos son iguales.

C.   No puede sobrecargar un operador en una estructura.

D.   Los miembros de una clase son privados por defecto, y los miembros de una estructura son públicos de forma predeterminada.

31: Verdadero o falso: en C ++, un comentario solo se puede especificar con un liderazgo //.

A.   Verdadero

B.   FALSO

32: std :: vector & lt; int & gt; V (4); std :: relleno (V.Begin (), V.end (), 4); ¿Cuál es el contenido de Vector V?

A.   4,4,4,4

B.   0,1,2,3

C.   4,5,6,7

D.   1,2,3,4

33: ¿Qué será 'int a =' a ';' ¿hacer?

A.   Declarará una nueva variable A y la establecerá en 97 (suponiendo una máquina que usa ASCII).

B.   Declarará una nueva variable A y la establecerá en su valor anterior.

C.   Causará un bucle infinito.

D.   Nada, es un error y no se compilará.

34: ¿Cuál de los siguientes puede causar un error de corrupción de memoria?

A.   Librar memoria que ya ha sido liberada.

B.   Todos estos

C.   Uso de una dirección antes de que se asigne la memoria y se establezca.

35: Considere este fragmento de código: A = 25; b = & a; ¿Qué es lo igual B?

A.   valor contenido en la dirección de un

B.   dirección de un

C.   25

36: ¿Cuál de los siguientes no es un operador de casting de tipo específico en el lenguaje C ++?

A.   Dynamic_cast

B.   reinterpret_cast

C.   desconocido_cast

D.   constante

37: Existe un elemento de estructura en su código con unidades de miembro entero. Tiene la siguiente declaración de variable: item * myItem;. ¿Cómo se accede al valor de las unidades?

A.   *(myItem.units)

B.   myitem- & gt; unidades

C.   myitem.unidades

38: Los tipos de datos definidos (typedef) le permiten crear ...

A.   Diferentes tipos en C ++.

B.   Nombres alternativos para los tipos existentes en C ++.

39: ¿Cuál de los siguientes es un identificador variable válido en C ++?

A.   m_test

B.   1_STR

C.   clase

40: ¿Qué hace la línea: #include & lt; iOStream & gt; ¿significa en un programa C ++?

A.   Le dice al programa que incluya los archivos de encabezado de biblioteca estándar.

B.   Le dice al preprocesador que incluya el archivo estándar iOSTream.

C.   Le dice al preprocesador que incluya el archivo estándar iOSTream solo si lo requiere el programa.

41: Dado este código, ¿cuál es la salida? #include struct shape {virtual void Move () {std :: cout << "Shape :: Move \ n"; }}; struct circle: public saper {void Move () {std :: cout << "Circle :: Move \ n"; }}; struct rectangle: public sape {void Move () {std :: cout << "Rectangle :: Move \ n"; }}; int main () {forma *s; s = nueva forma (); S-> Move (); s = nuevo círculo (); S-> Move (); s = nuevo rectángulo (); S-> Move (); regresar 0; }

A.   rectángulo :: Move Circle :: Move Shape :: Move

B.   Error de compilación

C.   Error de tiempo de ejecución

D.   Forma :: Move Forma :: Move Forma :: Move

E.   Forma :: Move Circle :: Move Rectangle :: Move

42: Dentro de una declaración de clase, la declaración "virtual int foo () = 0;" ¿Qué?

A.   Declara una función virtual volátil.

B.   Declara una función virtual pura.

C.   Causa un error del compilador.

D.   Declara una función virtual predeterminada.

43: std :: vector & lt; int & gt; foo (5);

A.   Inicializa un vector con 5 elementos de valor 0.

B.   Inicializa un vector con un elemento con el valor 5.

44: ¿Dónde busca primero el compilador File.h en la siguiente directiva: #include "File.h"?

A.   En todos los directorios especificados por la variable de entorno de ruta en la máquina.

B.   En los directorios predeterminados donde está configurado para buscar los archivos de encabezado estándar

C.   El mismo directorio que incluye el archivo que contiene la directiva.

45: ¿Cuál es el valor de 2--2?

A.   Nada, esa no es una expresión de C ++ válida.

B.   0

C.   -2

D.   2

E.   4

46: Verdadero o falso: se puede instanciar una clase que tiene un método virtual puro.

A.   Verdadero

B.   FALSO

47: Definir una forma que no sea usar la palabra clave en línea para hacer una función en línea

A.   La función debe definirse como la función de amigo.

B.   La función debe definirse dentro de la clase.

C.   La función debe definirse fuera de la clase.

48: ¿Cuál de estos es una diferencia entre la estructura y los tipos de clase?

A.   Ninguna diferencia.

B.   No hay herencias con estructuras. Las clases pueden ser derivadas.

C.   Las estructuras solo permiten definiciones variables. Las clases también permiten la definición de funciones.

D.   Las estructuras tienen privacidad pública por defecto, las clases usan privadas.

49: ¿Cuál es el tamaño de la matriz de personajes que contendría el valor "Helloo"?

A.   8

B.   6

C.   7

50: En C ++, ¿cuál es la diferencia entre estas dos declaraciones: void foo (); vacío foo (vacío);

A.   El segundo es ilegal.

B.   El primero es ilegal.

C.   Ninguno, son equivalentes.

D.   Uno de ellos no toma valor, el otro toma ningún valor.

51: ¿Cuál de las siguientes reglas se aplica a la sobrecarga del operador en C ++?

A.   Ambas respuestas son correctas.

B.   No se puede redefinir el significado de los tipos incorporados

C.   No se puede tener argumentos predeterminados

52: ¿Qué clase (es) se puede usar para realizar la entrada y la salida en los archivos en C ++?

A.   de la corriente

B.   fstream

C.   Ifstream

D.   Todas las respuestas son correctas.

53: ¿Cuál es el tipo de datos para lo siguiente: L "Hola mundo"?

A.   una cadena entera

B.   una cuerda

C.   una cadena de carácter ancho

54: Pensando en los miembros de los datos y la memoria direccionable, ¿en qué se diferencian una estructura, clase y sindicato?

A.   Sin diferencia, los tres se asignan memoria secuencialmente

B.   No hay diferencia, a los tres se les asigna memoria al azar.

C.   Los miembros de los datos de la Unión y la clase se asignan en la memoria secuencialmente, mientras que los miembros de los datos de Struct se asignan la memoria al azar

D.   Los miembros de datos de estructura y clase se asignan en la memoria secuencialmente, mientras que a una unión se asigna memoria al azar

E.   Los miembros de datos de estructura y clase se asignan en la memoria secuencialmente, mientras que a una unión se asigna suficiente memoria para el miembro de datos más grande solo

55: ¿Qué palabra clave C ++ permite que el compilador determine el tipo de variable por el valor utilizado para inicializarla?

A.   Auto

B.   varilla

C.   abstracto

D.   virtual

56: int *array = new int [10]; eliminar matriz;

A.   Este código liberará correctamente la memoria

B.   Este código tiene comportamiento indefinido

57: ¿Qué hace la palabra clave "explícita"?

A.   Evita que un constructor de argumento único se use en una conversión implícita

B.   Requiere una variable para residir en la memoria principal en lugar del caché de un procesador

C.   Hace que la declaración de un constructor predeterminado sea obligatoria

58: ¿Qué es una función virtual en C ++?

A.   Una función de miembro de la clase que espera ser redefinida en clases derivadas.

B.   Una función miembro de clase que debe redefinirse en clases derivadas.

C.   Una función de miembro de la clase que no necesita definirse en la clase base.

59: ¿Cuál es la complejidad del tiempo de eliminar la primera variable en un objeto deque (por ejemplo, deque & lt; int & gt; a;)?

A.   En 2)

B.   O (logn)

C.   En)

D.   O (1)

60: Supongamos int * a = new int [3]; ¿Cómo desanimaría el bloque de memoria apuntado por A?

A.   eliminar a [3];

B.   eliminar [] a;

C.   eliminar a;

D.   eliminar a [];

E.   eliminar [3] a;

61: ¿Qué operador no puede ser sobrecargado por una función de miembro de la clase?

A.   ==

B.   ?

C.   *

D.   []

E.   ++

62: ¿Cuál de las siguientes afirmaciones usa una expresión de lambda?

A.   std :: regex e (" \\ b (sub) ([^]*) ");

B.   int (*minus) (int, int) = rect;

C.   bool is_odd = [] (int n) {return n%2 == 1;};

63: Un puntero vacío es un tipo especial de puntero que indica el ...

A.   ausencia de un tipo para el puntero.

B.   ninguno de esos

C.   El puntero tiene un valor nulo.

64: ¿Cuál del siguiente método de llamadas foo () del padre de la clase principal de la clase actual?

A.   this-> parent-> foo ();

B.   Parent.foo ();

C.   Padre :: foo ();

D.   Instancia principal; instancia.foo;

65: Se usa un espacio de nombres anónimo para ...

A.   espacios de nombres de nidos

B.   Apoya los cierres

C.   Evitar el acceso externo a las declaraciones locales a una unidad de compilación

D.   desambiguar declaraciones de otros espacios de nombres

A.   No.

B.   Sí.

C.   Sí, pero solo si #include <string> primero.

D.   No, debe agregar "const" antes de "char".

67: ¿Cuál es el rango de datos para un valor entero sin firmar en C ++ en un sistema donde los ints son 32 bits?

A.   0 a 2,147,483,647

B.   0 a 65,535

C.   0 a 4,294,967,295

D.   0 a 255

68: ¿Cómo accederías a "azul" en la clase de enum "color"? Color de clase enum {rojo, azul, verde};

A.   azul

B.   color azul

C.   color [1]

D.   color azul

69: Los literales de cadena pueden extenderse a más de una sola línea de código colocando qué carácter al final de cada línea inacabada?

A.   una nueva línea (\ n)

B.   una pestaña (\ t)

C.   una barra insegura (\)

70: ¿Cuál de los siguientes es un posible efecto secundario de las funciones de enlinición?

A.   El estándar C ++ garantiza que la enlinición no da como resultado efectos secundarios adversos

B.   El tamaño del segmento de la pila del programa aumenta

C.   El tamaño de los aumentos binarios compilados

D.   El tamaño del segmento de montón del programa aumenta

71: ¿Qué tipo de excepciones puede lanzar la siguiente función: int myFunction (int a);?

A.   Todo

B.   Estándar

C.   Ninguno

72: ¿Cuál es teóricamente más rápido?

A.   ++ I

B.   i ++

C.   Ambos son igualmente rápidos.

73: ¿Cuál es el valor de x después del siguiente código: int x = 0; if (x = 1) {x = 2; } else {x = 1; }

A.   El código no se compilará

B.   1

C.   2

D.   0

74: ¿Cuál es el valor de 10.10 % 3?

A.   1

B.   1.0

C.   3.03

D.   1.01

E.   Ninguno, esa es una mezcla inválida de tipos.

75: Clase A {int x; protegido: int y; público: int z; }; Clase B: Private A {}; ¿Cuál es el nivel de privacidad de B :: Z?

A.   protegido

B.   público

C.   B no hereda el acceso a Z desde A.

D.   privado

76: Si no suministra ningún constructor para su clase, ¿qué constructor (s) serán creados por el compilador?

A.   Constructor de copias

B.   Constructor predeterminado

C.   Ambos

77: ¿Cuál es una diferencia clave entre una estructura y unión en términos de tamaño de memoria?

A.   Un sindicato es el tamaño de cualquier miembro de datos que se inicialice, mientras que el tamaño de una estructura es la suma del tamaño de los miembros de los datos de Struct.

B.   Una unión es el tamaño de su miembro de datos más grande, mientras que el tamaño de una estructura es la suma del tamaño de los miembros de los datos de Struct.

C.   Ninguna diferencia; son la suma de los tamaños de sus respectivos miembros de datos

D.   Una unión es el tamaño de su miembro de datos más grande, mientras que el tamaño de una estructura es al menos la suma del tamaño de los miembros de los datos de Struct

78: Dado: Union a {int x; corto y; }; un var [20]; ¿Cuántos bytes de memoria ocupa VAR?

A.   Este es un código C ++ inválido

B.   80

C.   Depende

D.   120

E.   4

79: ¿Cuál es la salida del siguiente código? int a = 8; para (int i = 1; i & lt; = i*3; i ++) n ++;

A.   Depender de la ejecución.

B.   Bucle infinito.

C.   Bucle finito.

D.   Todos están mal

80: ¿El código a continuación se compilará sin error? struct c0 {int i; c0 (int x) {i = x; }}; int main () {c0 x1 (1); C0 x2 (x1); regresar 0; }

A.   No. El constructor no es público.

B.   No. C0 x2 (x1) devolverá el error.

C.   No. Los tipos de estructura no tienen constructores.

D.   Sí.

81: ¿Cuál no es una tabla hash válida proporcionada por el STL?

A.   hash_multiset

B.   hash_set

C.   tabla de picadillo

D.   hash_map

E.   hash_multimap

82: Donde t es un tipo: std :: vector & lt; t & gt; :: en vs std :: vector & lt; t & gt; :: operator []:

A.   AT siempre los límites son revisados. El operador [] no lo es.

B.   AT no siempre está revisado por los límites. operador [] es.

C.   es equivalente al operador []

83: enum {a, b, c = b + 2}; ¿Cuál es el valor de C?

A.   4

B.   Error de compilación.

C.   3

D.   2

84: ¿Cuál es el tipo que se define aquí: typedef A (b ::*c) (d, e) const;

A.   A se define como una función constante en el espacio de nombres B que toma argumentos de los tipos D y E, devolviendo un puntero al tipo C.

B.   C se define como un puntero de función de miembro constante de la clase B que toma argumentos de los tipos D y E, tipo de regreso A.

C.   B se define como una clase que contiene una función miembro constante llamada A, que toma argumentos de los tipos D y E, que devuelve un puntero al tipo C.

85: std :: tuple persona {"John Doe", 42}; std :: cout << std :: get <1> (persona); ¿Cuál es la salida?

A.   Error de compilación

B.   John Doe

C.   42

86: ¿Cuál es el siguiente código? Código de estructura {unsigned int x: 4; Unsigned int y: 4; };

A.   Una declaración de estructura con 2 matrices de int.

B.   Una declaración de estructura de campo de un poco.

C.   Una estructura con inicialización en su lugar de sus miembros.

D.   Código C ++ no válido.

E.   Una declaración de un poco de selección.

87: ¿Cuál es la complejidad garantizada de std :: push_heap?

A.   O (log (n))

B.   En)

C.   O (n^2)

D.   O (1)

88: Según el estándar C ++, ¿qué es SizeOf (Void)?

A.   Depende del tamaño de la palabra de la computadora del host.

B.   Nada, el vacío no tiene tamaño.

C.   0

D.   1

E.   4

89: ¿Cuál es la salida del siguiente programa? #include #include int main () {std :: vector int_values ​​{3}; para (auto const & vv: int_values) {std :: cout << vv; }}

A.   Ninguno de esos

B.   3

C.   333

D.   El programa falla durante la compilación

E.   000

90: int a [] {1, 2, 3}; a [[] {return 2; } ()] += 2; ¿Cuál es el valor de un [2]?

A.   3

B.   Comportamiento indefinido

C.   5

D.   Error de compilación: atributo malformado.

E.   4

91: ¿Es posible crear una instancia de clase colocada en una ubicación particular en la memoria?

A.   Solo por Dirty Hack con reinterpret_cast.

B.   No. Solo se permite la asignación en la pila o en la memoria dinámica.

C.   Sí, la colocación nueva hace esto.

92: clase foo {foo () {}; }; clase boo: public foo {boo (): foo () {}; }; qué estándar permite la compilación de este código.

A.   ninguno, el código no compilará

B.   C ++ 11

C.   C ++ 03

D.   C ++ 98

E.   C ++ 0x

93: ¿Cuál es el valor de x, si sizeOf (int) == 4? Unsigned int a = 0x98765432; Unsigned int x = a >> 33;

A.   0x98765432

B.   1

C.   Este es un comportamiento indefinido

D.   0

E.   0x4c3b2a19

94: ¿Cuál es la salida del siguiente programa? int a, b = 3; const int & ar [] = {a, b}; ar [0] = 2; std :: cout << ar [0];

A.   3

B.   ninguna salida; El programa está mal formado

C.   0

D.   2

95: std :: vector & lt; int & gt; v (10); std :: iota (V.Begin (), V.end (), 10); ¿Cuál es el contenido de Vector V?

A.   1,2,3,4,5,6,7,8,9,10

B.   10,11,12,13,14,15,16,17,18,19,20

C.   1,2,3,4,5,6,7,8,9

D.   10,11,12,13,14,15,16,17,18,19

96: ¿Qué función siempre devuelve una referencia de RValue de "X", que se puede usar para indicar que el objeto se destruirá pronto?

A.   std :: xvalue (x)

B.   std :: mover (x)

C.   std :: shift (x)

D.   std :: destruir (x)

97: bool is_even (int i) {return i % 2 == 0; } int v [] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; std :: particion (v, v + 10, is_even); ¿Cuál es el contenido de Array V?

A.   0,1,2,3,4,5,6,7,8,9

B.   9,8,7,6,5,4,3,2,1

C.   std :: particion () no funciona con matrices simples.

D.   9,1,7,3,5,4,6,2,8,0

E.   0,8,2,6,4,5,3,7,1,9

98: Clase A {int x; protegido: int y; público: int z; }; Clase B: Public Virtual A {}; ¿Cuál es el nivel de privacidad de B :: x?

A.   privado

B.   B no hereda el acceso a X desde A.

C.   público

D.   protegido

99: El valor de "(sizeOf (short) == sizeOf (int) && sizeof (int) == sizeof (long))" es

A.   Implementación definida

B.   Error del compilador

C.   FALSO

D.   verdadero

100: ¿Cuál es la salida del siguiente programa? plantilla void foo (u &, t &) {std :: cout << "primero"; } plantilla void foo (int &, const t &) {std :: cout << "segundo"; } int main () {int a; doble g = 2.; foo (a, g); regresar 0; }

A.   Error de compilación: llamada ambigua

B.   primero

C.   segundo