Palavras-chave da Linguagem
Várias palavras-chave do linguagem, alteradas de gerenciado Extensions para C++ para Visual C++ 2008.
No novo Visual C++ 2008 sintaxe, o sublinhado duplo é removida sistema autônomo um prefixo de todas sistema autônomo palavras-chave (com uma exceção: __identifier é mantido). Por exemplo, uma propriedade agora é declarada sistema autônomo property, não __property.
Houve dois motivos principais para usar o prefixo de sublinhado duplo no gerenciado Extensions:
Ele é o método conformes de fornecer extensões locais para o padrão ISO-C++.O principal meta do design de gerenciado Extensions de era não apresentar incompatibilidades com o linguagem padrão, sistema autônomo novas palavras-chave e símbolos.Foi esse motivo, em grande parte, motivados a escolha da sintaxe de ponteiro para a declaração de objetos de tipos de referência gerenciado.
O uso do sublinhado duplo, além de seu aspecto conformes, também é uma garantia razoável de sendo não-invasor com a base de usuários de idiomas código existente.Esse foi o segundo meta principal do design de gerenciado Extensions.
Apesar de remover o sublinhado duplo, a Microsoft continua compromisso de ser conformes.Entretanto, o suporte para o modelo de objeto dinâmico CLR representa um paradigma de programação novo e poderoso.Suporte a esse novo paradigma requer seu próprio palavras-chave de alto nível e tokens.Nós tiver procurado fornecer uma expressão de primeira classe desse novo paradigma enquanto integrá-la e a linguagem padrão de suporte.O novo design de sintaxe fornece uma experiência de programação primeira classe desses dois modelos de objeto diferentes.
Da mesma forma, estamos preocupados com maximizando a natureza não invasiva essas novas palavras-chave de linguagem.Isso tem sido realizado com o uso de palavras-chave contextual e espaçados.Antes de examinarmos a nova sintaxe de linguagem real, let’s Tente dar sentido a esses dois tipos especiais de palavra-chave.
Uma palavra-chave contextual tem um significado especial em contextos de programa específico.Dentro do programa geral, por exemplo, sealed é tratado sistema autônomo um identificador comum. No entanto, quando ele ocorre em parte de um tipo de classe referência gerenciado declaração, ele será tratado sistema autônomo uma palavra-chave dentro do contexto da declaração da classe.Isso minimiza o impacto potencial invasivo de introduzir uma nova palavra-chave na linguagem, algo que sentimos é muito importante para usuários com uma base de código existente.Ao mesmo time, permite que os usuários a nova funcionalidade ter uma experiência de primeira classe do recurso linguagem adicional – algo que não era possível com extensões gerenciadas.Para obter um exemplo de como sealed é usado consulte Declaração de um tipo de classe gerenciada.
Uma palavra-chave espaçada, sistema autônomo value class, é um caso especial de uma palavra-chave contextual. Ele pares uma palavra-chave existente com um modificador contextual separado por um espaço.O emparelhar é tratado sistema autônomo uma única unidade em vez de duas palavras-chave separadas.