O erro que discutiremos neste tutorial é "Erro: identificador esperado antes da constante numérica". Esse erro ocorre principalmente quando estamos tentando inicializar ou declarar os membros de dados fora do método sem usar o aparelho. Antes da introdução do C ++ 11, um codificador poderia primeiro declará -los e depois inicializaremos o valor para eles. Ou podemos dizer que fora da classe, não podemos inicializar os valores usando o construtor.
Vamos verificar a sintaxe. Realizaremos um exemplo para aprender como remover esses erros e a maneira de verificar o motivo.
Sintaxe:
Não existe uma sintaxe tal especificada para este erro, porque não é o comando para executar alguma ação ou a chamada de função. Este erro parece o seguinte:
Erro: identificador esperado antes da constante numérica
No erro acima, o identificador indica os nomes únicos das variáveis. A constante numérica é a coleção de numerais, liderança ou pontos decimais. Por exemplo, 3.0, 3, -2. As constantes numéricas inválidas são 2-, 1b, 3…, 4. Etc.
Exemplo # 01:
Vamos executar um exemplo para verificar como o erro ocorre e a maneira de resolver esses erros. Antes de mudar para o nosso código principal, incluiremos nossos arquivos de cabeçalho que são "vetor", "string", "sstream", "fStream", "isotream" e o "cmath". O arquivo de cabeçalho do vetor é o mesmo que as matrizes dinâmicas, eles podem redimensionar enquanto os novos dados são inseridos na matriz. Como vamos trabalhar com as matrizes do tipo dinâmico, escolhemos matrizes vetoriais, que fornecem várias funções para trabalhar com matrizes. O arquivo de cabeçalho de segunda linha que incluímos é porque vamos trabalhar com uma série de caracteres. E para trabalhar com ele, é necessário incluir o arquivo de cabeçalho da string. Depois disso, incluímos "FStream", "SStream" e "isostream". O FStream é usado para permitir que o codificador funcione com o sistema de arquivos. O SStream está incluído para trabalhar com o StringStream, que é usado para associar o objeto ao fluxo, permitindo ler a string se for transmitida, onde o iostream é usado para executar as operações de E/S.
Finalmente, o arquivo de cabeçalho "cmatch" está incluído, que é usado para permitir que o codificador execute vários cálculos usando as funções embutidas fornecidas pela biblioteca "CMATH". Em seguida, usando o espaço para nome STD, permitimos que o codificador definisse a variável que é fornecida pelas bibliotecas de DST. Depois de incluir todos os arquivos essenciais do cabeçalho, criamos uma string vetorial usando a sintaxe “Nome do vetor ()”. Esta é a sintaxe especificada para criar uma string vetorial. No nosso caso, criamos uma variável de string vetorial de nome "var1" para a qual passamos dois parâmetros: o primeiro é o número da string e o segundo é o valor nulo, o que significa que não queremos armazenar nada nele certo agora.
Na próxima etapa, declaramos outra matriz vetorial do tipo string chamada "VAR2" para a qual passamos dois argumentos: o primeiro é o número de strings e o segundo é o "var1". Depois disso, declaramos uma classe chamada "my_class" na qual declaramos outra string vetorada chamada "var_name" para a qual passamos o número de strings "5". Depois disso, outra matriz vetorial do tipo inteiro, declaramos qual, nomeamos "Val", na matriz "val", passamos dois parâmetros o número de strings "5" e o valor 0 atribuído a ele.
Em seguida, declaramos uma função pública para todo o código que executará a mensagem "Erro resolvido". Agora, em nossa função principal, declaramos um nome de variável "obj" do tipo "my_class" para chamar as variáveis e funções "myclass". No final, retornaremos o valor nulo e, usando o comando F7, executaremos o código.
#incluir
#incluir
#incluir
#incluir
# incluir
#incluir
usando namespace std;
vetorvar1 (6, "nulo");
vetor< vector> var2 (20, var1);
classe my_class
vetorvar_name (5);
vetorVal (5,0);
público:
minha classe()
cout << "error resolved" <
;
int main ()
my_class obj;
retornar 0;
Agora, verificaremos a saída do código que é exibido abaixo do erro. Duas linhas foram exibidas, online “15” e “16”. Este erro mostra “Erro: identificador esperado antes da constante numérica”. Isso significa que estamos inicializando a variável fora do escopo e algo está faltando, seja aparelho, vírgulas ou então. Para resolver este erro, leremos as duas linhas e verificaremos o motivo deste erro e resolveremos.
Para resolver esse erro, acabamos de substituir este código de declaração de string vetorial pelo que declaramos no código acima. O método certo para inicializar a variável vetor é o que é exibido abaixo: usando o operador de atribuição, atribuímos os valores à variável vetorial ou passando por aparelhos encaracolados.
Depois de resolver o erro, executamos nosso código novamente e executamos o código com sucesso com a mensagem exibida no snippet abaixo.
Conclusão
Neste tutorial, estudamos brevemente um erro que ocorre com mais frequência no momento da compilação, que é o erro de sintaxe. Esse tipo de erro ocorre principalmente quando o programador inicializou os dados fora da classe. E eles provavelmente ocorreram devido a más práticas de programação. Esperamos que este artigo seja vantajoso para você enquanto trabalha com aulas e construtores. Você pode tentar mais exemplos para entender melhor como esses tipos de erros seriam resolvidos.