Unsafe Code and Pointers (C# Programming Guide)
Para manter o type safety and security, C# não oferece suporte a aritmética de ponteiro, por padrão. No entanto, usando o inseguros palavra-chave, você pode definir um contexto sem segurança, na qual os ponteiros podem ser usados. Para obter mais informações sobre os ponteiros, consulte o tópico tipos de ponteiro.
Observação |
---|
No common language runtime (CLR), código não seguro é conhecido como código não verificado. Código não seguro em C# não é necessariamente perigoso; é apenas código cuja segurança não pode ser verificada pelo CLR. O CLR, portanto, executará apenas código inseguro se ele estiver em um assembly totalmente confiável. Se você usar o código não seguro, é sua responsabilidade assegurar que seu código não apresenta riscos de segurança ou erros de ponteiro. |
Visão geral de código não seguro
Código não seguro tem as seguintes propriedades:
Blocos de código, tipos e métodos podem ser definidos como não seguros.
Em alguns casos, código não seguro pode aumentar o desempenho do aplicativo, removendo as verificações de limites de matriz.
Código não seguro é necessário quando você chamar funções nativas que exigem ponteiros.
Usar o código não seguro apresenta riscos de segurança e estabilidade.
Fim de C# compilar o código não seguro, o aplicativo deve ser compilado com /unsafe.
Seções relacionadas
Para obter mais informações, consulte:
How to: Usar ponteiros para Copiar uma matriz de Bytes (guia de programação de C#)
How to: Use a função ReadFile do Windows (guia de programação C#)
Especificação da linguagem C#
Para obter mais informações, consulte C# Language Specification A especificação de linguagem é a fonte definitiva para a sintaxe e o uso de C#.