Teste Mock C ++

Esta seção apresenta vários conjuntos de testes de simulação relacionados a C++ Framework. Você pode baixar esses testes de simulação de amostra em sua máquina local e resolvê-los offline de acordo com sua conveniência. Cada teste simulado é fornecido com uma chave de teste simulado para permitir que você verifique a pontuação final e classifique você mesmo.

Teste Mock C ++ I

Q 1 - O especificador de acesso padrão para os membros da classe é

A - público

B - privado

C - protegido

D - Nenhuma das opções anteriores.

Resposta: B

Explicação

Se um membro / s aparecer na classe sem seguir nenhum especificador de acesso, o padrão é privado.

Q 2 - Um caractere trigrafo começa com

A - #

B - ##

C -?

D - ??

Resposta: C

Explicação

Poucos personagens têm representação alternativa e começam com ??. Por exemplo. Fro [equivalente é ?? (

Resposta: D

Explicação

C ++ suporta todas as formas de herança.

Resposta: A

Explicação

Conforme a função embutida é expandida na linha de chamada como uma macro, ela é executada mais rapidamente.

Resposta: D

Explicação

Uma função virtual pura não pode ter uma definição.

Q 7 - Qual é o resultado do seguinte 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 - Erro de compilação

Resposta: B

Explicação

Apenas as variáveis ​​dos membros da classe constituem o tamanho da classe ou de seu objeto.

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

Q 8 - Qual é o resultado do seguinte 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

Resposta: A

Explicação

A variável de membro estático 'x' compartilha memória comum entre todos os objetos criados para a classe.

#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;
}

Q 9 - Um construtor pode ser virtual.

A - Verdadeiro

B - Falso

Resposta: B

Explicação

A finalidade do construtor não pode ser substituída na classe derivada, portanto, o construtor não pode ser virtual.

Q 10 - Escolha o operador que não pode ser sobrecarregado.

A - /

B - ()

C - ::

D -%

Resposta: C

Explicação

A resolução do escopo (: :) não pode ser sobrecarregada.

Q 11 - Qual operador deve ser sobrecarregado apenas como função de membro?

A - _

B - _ _

C - ++ (versão postfix)

D - =

Resposta: D

Explicação

O operador de atribuição sobrecarregado faz o trabalho semelhante ao construtor de cópia e deve ser sobrecarregado como função de membro da classe.

Q 12 - Qual das seguintes não é a palavra-chave em C ++?

A - volátil

B - amigo

C - estende

D - este

Resposta: C

Explicação

Todo o resto são palavras-chave válidas de C ++.

Q 13 - Qual é o resultado do seguinte 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 - Lixo

C - Erro na afirmação i = i;

D - Erro de compilação: 'i' declarado duas vezes.

Resposta: B

Explicação

i = i, está atribuindo variável de membro a si mesmo.

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

Resposta: C

Explicação

Se nenhum especificador de acesso for especificado para variáveis ​​/ funções de estrutura, o padrão será considerado público.

Q 15 - Da classe abaixo, escolha a definição apropriada da função membro f ().

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

A - modelo <classe T>

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

B - modelo <classe T>

    void abc :: f () {}

C - modelo <T>

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

D - modelo <T>

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

Resposta: A

Explicação

Q 16 - Escolha o respectivo uso do operador de exclusão para a expressão 'ptr = new int [100]'.

A - excluir ptr;

B - excluir ptr [];

C - deletar [] ptr;

D - [] excluir ptr;

Resposta: C

Explicação

Resposta: B

Explicação

É um objeto da classe istream.

Q 18 - O operador usado para acessar a função membro de uma estrutura usando seu objeto.

A -.

B - ->

C - *

D - Nenhuma das opções anteriores.

Resposta: A

Explicação

Da mesma forma que usamos o operador ponto (.) Para acessar os membros da classe, da mesma forma que é usado para acessar os membros da estrutura também.

Q 19 - Um arquivo de cabeçalho definido pelo usuário é incluído pela seguinte declaração em geral.

A - #inclui “arquivo.h”

B - #include <file.h>

C - #include <file>

D - #include file.h

Resposta: A

Explicação

Com a sintaxe como em (a), o compilador primeiro procura pelo arquivo no diretório de trabalho atual e, em seguida, no caminho de inclusão padrão se não for encontrado.

Q 20 - Que tipo de dados pode ser usado para conter um caractere largo em C ++?

A - char unsigned;

B - int

C - wchar_t

D - nenhuma das opções acima.

Resposta: C

Explicação

wchar_t é o tipo de dados com o qual podemos conter caracteres Unicode.

Q 21 - Qual é o especificador de armazenamento usado para modificar a variável de membro, embora o objeto de classe seja um objeto constante?

A - auto

B - registrar

C - estático

D - mutável

Resposta: D

Explicação

mutable é o especificador de armazenamento introduzido em C ++ que não está disponível em C. Um membro de classe declarado com mutable é modificável embora o objeto seja constante.

Q 22 - O seguinte operador pode ser usado para calcular o valor de um número elevado a outro.

A - ^

B - **

C - ^^

D - Nenhuma das opções acima

Resposta: D

Explicação

Esse operador não existe em C / C ++.

Q 23 - Pegue a declaração válida para sobrecarregar ++ em forma de postfix onde T é o nome da classe.

A - operador T ++ ();

B - operador T ++ (int);

C - T & operador ++ ();

D - T & operador ++ (int);

Resposta: B

Explicação

O parâmetro int serve apenas para significar que a forma pós-fixada está sobrecarregada. Não deve retornar referência de acordo com seu comportamento original.

Q 24 - Podemos ter um número variável de argumentos para a forma sobrecarregada do operador ().

A - Verdadeiro

B - Falso

Resposta: A

Explicação

Resposta: B

Explicação

Ambos os operadores mencionados não podem ser sobrecarregados.

Folha de respostas

Número da Pergunta Palavra chave
1 B
2 C
3 D
4 UMA
5 D
6 B
7 B
8 UMA
9 B
10 C
11 D
12 C
13 B
14 C
15 UMA
16 C
17 B
18 UMA
19 UMA
20 C
21 D
22 D
23 B
24 UMA
25 B