Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
'storage-class-keyword' não é mais uma classe de armazenamento suportada
Observações
As auto palavras-chave da classe de armazenamento e register foram preteridas ou removidas da linguagem C++.
Visual Studio 2010 e posterior: Em C++11, a auto palavra-chave não é mais um especificador de classe de armazenamento C++ e a register palavra-chave foi preterida.
Visual Studio 2017 versão 15.7 e posterior: (disponível no /std:c++17 modo e posterior): A register palavra-chave é removida da linguagem C++ em C++17 e padrões posteriores.
O padrão C++ define um significado original e revisado para a auto palavra-chave. Antes do C++11, a auto palavra-chave declara uma variável na classe de armazenamento automático , ou seja, uma variável que tem um tempo de vida local. A partir de C++11, a auto palavra-chave declara uma variável cujo tipo é deduzido da expressão de inicialização em sua declaração. Para compatibilidade com versões anteriores, você pode usar a /Zc:auto opção de compilador para controlar o significado da auto palavra-chave.
A register palavra-chave foi originalmente concebida como uma sugestão ao compilador para colocar uma variável em um registro. A palavra-chave era rotineiramente ignorada pelos compiladores. Em vez disso, os compiladores controlam se as variáveis são colocadas em registros para satisfazer convenções de chamada e níveis de otimização. A register palavra-chave está reservada na norma para uso futuro.
Example
// c5033.cpp
// compile by using: cl /c /std:c++17 c5033.cpp
register int value; // warning C5033: 'register' is no longer a supported storage class
Para corrigir esse problema, remova a palavra-chave especificador de register classe de armazenamento.