Sistema de programação orientada a objetos.

A classe é um projeto que reflete os atributos e ações das entidades. Definir tecnicamente uma classe é projetar um tipo de dados definido pelo usuário.

Uma instância da classe é chamada de objeto.

Único, multinível, múltiplo, hierárquico e híbrido.

Se um membro da classe estiver protegido, ele estará acessível na classe herdada. No entanto, fora de ambos os membros privados e protegidos não estão acessíveis.

O processo de vincular os dados e as funções que atuam nos dados em uma entidade (classe) chamada de encapsulamento.

Abstração se refere a ocultar a implementação interna e exibir apenas os detalhes necessários.

Herança é o processo de aquisição das propriedades da classe existente para a nova classe. A classe existente é chamada de classe base / pai e a classe herdada é chamada de classe derivada / filha.

Declarar uma variável volátil indica ao compilador que a variável pode ser alterada externamente. Evitando, portanto, a otimização do compilador na referência da variável.

Uma função prefixada com a palavra-chave embutida antes da definição da função ser chamada como função embutida. As funções embutidas são mais rápidas na execução quando comparadas às funções normais, pois o compilador trata as funções embutidas como macros.

A classe de armazenamento especifica a vida ou o escopo dos símbolos, como variáveis ​​ou funções.

A seguir estão as classes de armazenamento com suporte em C ++

automático, estático, externo, registrador e mutável

A variável de membro de um objeto de classe constante pode ser alterada declarando-a usando um especificador de classe de armazenamento mutável. Aplicável apenas para variável de membro não estática e não constante da classe.

A cópia superficial faz o despejo de memória bit a bit de um objeto para outro. A cópia profunda é a cópia campo por campo de um objeto para outro. A cópia profunda é obtida usando o construtor de cópia e / ou operador de atribuição de sobrecarga.

Uma função virtual sem corpo de função e atribuída com um valor zero é chamada de função virtual pura.

Uma classe com pelo menos uma função virtual pura é chamada de classe abstrata. Não podemos instanciar uma classe abstrata.

Uma variável de referência é um nome alternativo para a variável existente. O que significa que o nome da variável e a variável de referência apontam para o mesmo local de memória. Portanto, a atualização na variável original também pode ser realizada usando a variável de referência.

Uma variável estática sai, embora os objetos da respectiva classe não sejam criados. A variável de membro estático compartilha uma memória comum entre todos os objetos criados para a respectiva classe. Uma variável de membro estático pode ser referenciada usando o próprio nome da classe.

Uma função de membro estático pode ser chamada usando o nome da classe, uma vez que sai antes que os objetos de classe passem a existir. Ele pode acessar apenas membros estáticos da classe.

wchar_t

Ponto (.) E seta (->)

Não, definir uma classe / estrutura é apenas uma definição de tipo e não alocará memória para a mesma.

bool, é o novo tipo de dado primitivo introduzido na linguagem C ++.

Definir várias funções com o mesmo nome com lista exclusiva de parâmetros é chamado de sobrecarga de função.

Definir um novo trabalho para o operador existente em relação aos objetos de classe é chamado de sobrecarga de operador.

Não, é uma classe da STL (biblioteca de modelos padrão).

cin, cout, cerr e clog.

Privado e protegido.

Operador de resolução de escopo (: :)

Um destruidor é a função membro da classe que tem o mesmo nome do nome da classe e prefixada com o símbolo til (~). Ele é executado automaticamente por escrito no objeto assim que o objeto perde seu escopo. Não pode ser sobrecarregado e o único formulário é sem os parâmetros.

Um construtor é a função-membro da classe que tem o mesmo nome da classe e é executado automaticamente assim que o objeto para a respectiva classe é criado.

Cada classe tem um construtor fornecido pelo compilador se o programador não fornecer um e conhecido como construtor padrão. Um construtor fornecido pelo programador sem parâmetros é chamado de construtor padrão. Nesse caso, o compilador não fornece o construtor.

'novo' é o operador que pode ser usado para o mesmo.

O operador 'delete' é usado para liberar a memória dinâmica que foi criada usando o operador 'new'.

Sim, como C é o subconjunto de C ++, podemos todas as funções de C em C ++ também.

Não, precisamos usar a linguagem C free () para o mesmo.

Uma função que não é membro da classe, mas ainda pode acessar todos os membros da classe, é chamada assim. Para que isso aconteça, precisamos declarar dentro da classe exigida seguindo a palavra-chave 'amigo'.

Um construtor de cópia é o construtor que usa a mesma referência de objeto de classe como parâmetro. Ele é chamado automaticamente assim que o objeto é inicializado com outro objeto da mesma classe no momento de sua criação.

C ++ oferece suporte ao tratamento de exceções. try, catch & throw são palavras-chave usadas para o mesmo.

Esta é a variável de ponteiro do compilador que sempre mantém o endereço do objeto ativo atual.

Por padrão, os membros da estrutura são públicos e, por padrão, os membros da classe são privados.

Sim.

Uma variável cujo escopo é aplicável apenas dentro de um bloco é dito assim. Além disso, uma variável em C ++ pode ser declarada em qualquer lugar dentro do bloco.

Se o arquivo já existir, seu conteúdo será truncado antes de abrir o arquivo.

O operador de resolução de escopo é usado para

  • Resolva o escopo das variáveis ​​globais.
  • Para associar a definição de função a uma classe se a função for definida fora da classe.

Um namespace é a divisão lógica do código que pode ser usada para resolver o conflito de nomes dos identificadores, colocando-os em diferentes namespaces.

Os argumentos / parâmetros que são enviados para a função main () durante a execução da linha de comando / console são assim chamados. Todos os argumentos enviados são apenas strings.

Uma classe de modelo é uma classe genérica. O modelo de palavra-chave pode ser usado para definir um modelo de classe.

O bloco de captura com elipses como segue

catch(…) 
{
}

Por padrão, cada variável local da função é automática (automática). Na função abaixo, ambas as variáveis ​​'i' e 'j' são variáveis ​​automáticas.

void f() 
{
   int i;
  
   auto int j;
}

NOTE - Uma variável global não pode ser uma variável automática.

Uma variável local estática retém seu valor entre a chamada de função e o valor padrão é 0. A função a seguir imprimirá 1 2 3 se chamada três vezes.

void f() 
{ 
   static int i; 
   
   ++i; 
   printf(“%d “,i); 
}

Se uma variável global for estática, sua visibilidade será limitada ao mesmo código-fonte.

Usado para resolver o escopo do símbolo global

#include <iostream>

using namespace std;	
main() {
   extern int i;
      
   cout<<i<<endl;
}
int i = 20;

O endereço inicial do array é chamado de endereço base do array.

Se uma variável é usada com mais frequência, então ela deve ser declarada usando o especificador de armazenamento de registro, então possivelmente o compilador fornece o registro da CPU para seu armazenamento para acelerar a pesquisa da variável.

Sim, pode ser, mas não pode ser executado, pois a execução requer a definição da função main ().

Cada variável local por padrão sendo uma variável automática é armazenada na memória da pilha

Uma classe contendo pelo menos uma variável de membro de outro tipo de classe é chamada assim.

Um programa C ++ consiste em vários tokens e um token pode ser uma palavra-chave, um identificador, uma constante, um literal de string ou um símbolo.

O pré-processador é uma diretiva para o compilador realizar certas coisas antes que o processo de compilação real comece.

Os argumentos que passamos para a função main () durante a execução do programa são chamados de argumentos de linha de comando. Os parâmetros são sempre strings mantidas no segundo argumento (abaixo em args) da função que é um array de ponteiros de caracteres. O primeiro argumento representa a contagem de argumentos (abaixo da contagem) e é atualizado automaticamente pelo sistema operacional.

main( int count, char *args[]) {
}
  • Call by value- Enviamos apenas valores para a função como parâmetros. Escolhemos isso se não quisermos que os parâmetros reais sejam modificados com parâmetros formais, mas apenas usados.

  • Call by address- Enviamos o endereço dos parâmetros reais em vez dos valores. Escolhemos isso se quisermos que os parâmetros reais sejam modificados com parâmetros formais.

  • Call by reference- Os parâmetros reais são recebidos com as novas variáveis ​​de referência C ++ como parâmetros formais. Escolhemos isso se quisermos que os parâmetros reais sejam modificados com parâmetros formais.

Erro, é inválido que qualquer um dos operandos para o operador de módulo (%) seja um número real.

Opiton –lm a ser usado como> g ++ –lm <file.cpp>

Não, não existe tal disposição disponível.

Bjarne Stroustrup.

tamanho de

Podemos aplicar o operador de resolução de escopo (: :) ao para o escopo da variável global.

As únicas duas operações permitidas em ponteiros são

  • Comparação ii) Adição / Substração (excluindo ponteiros vazios)

A própria chamada de função é chamada de recursão.

Nome do programa.

Idealmente, tem 32 caracteres e também depende da implementação.

Por padrão, as funções são chamadas por valor.

Público, privado e protegido

Delete [] é usado para liberar a memória alocada do array que foi alocada usando new [] e delete é usado para liberar um pedaço de memória que foi alocado usando new.

Não necessariamente, uma classe com pelo menos uma função virtual pura também é uma classe abstrata.

Não, será um erro porque o compilador não consegue fazer a conversão.

O programa será encerrado abruptamente.

Não, as exceções podem ser tratadas enquanto o programa não pode resolver os erros.

Definindo as funções dentro da classe base e derivada com a mesma assinatura e nome onde a função da classe base é virtual.

searchg ()

searchp ()

Não, apenas as variáveis ​​dos membros da classe determinam o tamanho do respectivo objeto de classe.

Podemos criar uma classe vazia e o tamanho do objeto será 1.

Namespace padrão definido por C ++.

Biblioteca de modelos padrão

cout é o objeto da classe ostream. O stream 'cout' é por padrão conectado ao dispositivo de saída do console.

cin é o objeto da classe istream. O stream 'cin' é por padrão conectado ao dispositivo de entrada do console.

É usado para especificar o namespace que está sendo usado no.

O operador de seta (->) pode ser usado para o mesmo

Se um arquivo de cabeçalho for incluído em <>, o compilador procura o arquivo de cabeçalho específico apenas com o caminho de inclusão integrado. Se um arquivo de cabeçalho for incluído em ““, então o compilador procura o arquivo de cabeçalho particular primeiro no diretório de trabalho atual, se não for encontrado, então no caminho de inclusão integrado

S ++, pois é uma instrução de máquina única (INC) internamente.

Os parâmetros enviados para a função no final da chamada são chamados como parâmetros reais enquanto no recebimento da definição da função chamada como parâmetros formais.

A declaração associa o tipo à variável, enquanto a definição fornece o valor à variável.

vamos para.

Não, contém dígitos octais inválidos.

Ele será usado para indefinir uma definição de macro existente.

Não nós não podemos.

Um destruidor virtual garante que os recursos do objeto sejam liberados na ordem reversa do objeto que está sendo construído em relação ao objeto herdado.

Os objetos são destruídos na ordem inversa de sua criação.

Os membros de uma classe podem obter acessibilidade sobre outro membro da classe, colocando a declaração da classe prefixada com a palavra-chave 'amigo' na classe de destino.