Partilhar via


Palavras-chave comparadas em vários idiomas

Este tópico lista tarefas comuns de programação que podem ser resumidas com uma palavra-chave da linguagem.Para obter mais informações sobre as tarefas que precisam exemplos de código, consulte Conceitos de programação comparados em vários idiomas, com exemplos de código.

Finalidade

Visual Basic

C++

C#

F#

Declare uma variável

Dim

Público

Friend

Protegido

Privado

Compartilhado

Estático1

declarators (conceito, não palavra-chave)

declarators (as palavras-chave incluem tipos definidos pelo usuário e tipos de built-in)

deixe associações

Valores

Declarar uma constante nomeada

Const

const

const

readonly

deixe associações

Valores

Crie uma nova instância de uma classe

Novo

novo

ref new, gcnew (Extensões de Componentes C++)

novo

new

Crie um novo objeto

Novo

CreateObject para objetos COM

CoCreateInstance() (para objetos COM)

novo 

new

Atribuir um objeto a uma variável de objeto

=

=

=

<-

A função/método não retorna um valor

Sub2

vácuo

vácuo

Tipo de unidade

Sobrecarregar uma função ou um método (Visual Basic: sobrecarregar um procedimento ou o método)

Sobrecargas

(Nenhum palavras-chave da linguagem necessário para essa finalidade)

(Nenhum palavras-chave da linguagem necessário para essa finalidade)

override

Refere-se ao objeto atual

I3

isso

isso

Use o identificador são como descrito em Métodos ou em Membros

Faça uma chamada nonvirtual a um método virtual do objeto atual

MyClass

MyClass::Func1(), onde é MyClass classe de c++ com uma função de membro Func1.

Não aplicável.

Não aplicável.

Recuperar o caractere de uma cadeia de caracteres

GetChar, ou str(10) onde str é uma cadeia de caracteres

*(p + 10) ou p[10] onde p é um char* ou um wchar_t*

str[10] onde str é uma cadeia de caracteres

cadeia de caracteres

str.Chars(10) onde str é uma cadeia de caracteres

Cadeias de caracteres

Declare um tipo de dados composto (a estrutura)

Estrutura

Classe

Interface

Classe

estrutura

união

__interface

estrutura

Classe

interface

Classes

Inicializar um objeto (o construtor)

Sub new ()()4

construtores (conceito, não palavra-chave)

Construtores, ou construtores de tipo padrão do sistema

Construtores de classe

Construtores

Finalizar um objeto diretamente

Não aplicável.

~ClassName

Não aplicável.

Não aplicável.

O método chamado pelo sistema imediatamente antes de coleta de lixo recupera um objeto5

Finalize (no Visual Basic 6,0, Class_Terminate)

Destructors (C++) (conceito, não palavra-chave)

Destructors

Finalize

Garanta que os recursos não gerenciados são depois de uso dispose

Using

Não aplicável.

Usando

Gerenciamento de Recursos

Inicializar uma variável onde está declarado

Dim x As Long = 5

Dim c As New Car(FuelTypeEnum.Gas)

//inicializa como um valor:

int x=5;

//with um construtor apropriado:

C c(10);

//inicializa como um valor:

int x = 123;

//ou construtor padrão de uso:

int x = new int();

let x = 123

Leve o endereço de uma função

AddressOf (este operador retorna uma referência a uma função na forma de uma instância do representante)

delegado (Extensões de Componentes C++)

delegado

Funções

Retorno de chamada

Passar o endereço de uma função outra que chama a trás do solicitante.Para ver um exemplo, consulte Como: passar procedimentos para outro procedimento em Visual Basic.

CALLBACK (um atual)

callback (atributo de IDL)

delegado

Não aplicável.

Declare que um objeto pode ser modificado de forma assíncrona

Não aplicável.

temporário

temporário

Não aplicável.

Declaração explícita de força de variáveis

Opção Explicit

Não aplicável (todas as variáveis devem ser declaradas antes do uso)

Não aplicável (todas as variáveis devem ser declaradas antes do uso)

Não aplicável (todas as variáveis devem ser declaradas antes do uso)

Ativar a inferência de tipos local

Option infer

Inferência de tipos é automaticamente ativada

Teste para um variável de objeto que não faz referência a um objeto

o obj é nothing

pobj == NULL

obj == null

Use uma opção em uma expressão de correspondência

Opção

Correspondência de expressões

Valor de uma variável de objeto que não faz referência a um objeto

Nothing

nullptr

nulo

Valores nulos

Teste uma expressão de zero de banco de dados

IsDBNull

Não aplicável.

Não aplicável.

Não aplicável.

Testar se uma variável variante esteve inicializado

Não aplicável.

Não aplicável.

Não aplicável.

Não aplicável.

Defina uma propriedade padrão

Padrão

property: a palavra-chave depropertyrefere-se ao código gerenciado

Indexadores

Propriedades indexadas

Programação orientada a objeto

Finalidade

Visual Basic

C++

C#

F#

Refere-se a uma classe base

MyBase

__super

base

base

Declare uma interface

Interface

__interface

classe de interface (Extensões de Componentes C++)

interface

interface

Especificar uma interface a ser implementada

Implementações

(Apenas da interface derivada)

class C1 : public I1

class C1 : I1

Interfaces

interface

Declare uma classe

Classe

Classe

Classes e Estruturas (Extensões de Componentes C++)

Classe

tipo

Declare um módulo

Module

static class

static class

módulo

Declare uma definição parcial de uma classe ou estrutura

Parcial

Não aplicável.

Parcial

Nenhum direto equivalente.Consulte Extensões de tipo (F#).

Especificar que uma classe pode apenas ser herdada.Uma instância da classe não pode ser criada

MustInherit

abstrata (Extensões de Componentes C++)6

abstrata

Classes abstratas

Especificar que uma classe não pode ser herdada

NotInheritable

autenticada (Extensões de Componentes C++)

autenticada

SealedAttribute

Declare um tipo enumerado

Enum

enum

enum

tipo

Declarar uma constante de classe

Const

const

const (aplicado a uma declaração de campo)

Os valores são imutáveis constante () por padrão.Consulte Valores (F#).

Derive uma classe de uma classe base

A classe herda C1 o C2

Class C1 : public Base (sem palavras-chave da linguagem necessário para essa finalidade)

class C1 : C2

Classe

herda

Substituir um método ou propriedade

Overrides

(Nenhum palavras-chave da linguagem necessário para essa finalidade exceto substituir (Extensões de Componentes C++) para compilações de /clr — consulte Classes derivadas)

override

override

Declare um método que deve ser implementado em uma classe base

MustOverride

Coloque = 0 no final da declaração (o método) puro virtual

abstrata

abstrata

Declare um método que não pode ser substituído

NotOverridable (métodos são NotOverridable por padrão.)

autenticada (Extensões de Componentes C++)

autenticada

Use o atributo sealed

Declare um método ou propriedade virtual, ou o acessador de propriedade

Substituível

virtual

virtual

abstract, como descrito em Métodos

Ocultar um membro da classe base em uma classe derivada

Sombreamento

novo (novo slot em vtable) (Extensões de Componentes C++)

novo

Ocultar um método virtual ou abstrata não é permitido

Declare uma referência de typesafe para um método da classe

Delegado

delegado (Extensões de Componentes C++)

delegado

myObj.myFunction onde myObj é um objeto e myMethod é um método disponível no objeto

Especificar que uma variável pode conter um objeto cujos eventos você deseja tratar

WithEvents

Não aplicável.

(Escrever código - nenhum palavra-chave específica)

Não aplicável.

Especificar os eventos para um procedimento de evento será chamado

Alças (os procedimentos do evento ainda podem ser associadas com um variável de WithEvents por padrão de nomeação)

Não aplicável.

eventHandler do evento; +=

Não aplicável.

Avalie uma expressão de objeto uma vez, para acessar mais membros

With…End with

Não aplicável.

Não aplicável.

Não aplicável.

Manipulação de exceção

Finalidade

Visual Basic

C++

C#

F#

Manipulação de exceção

Try…… Catch…… FinallyEnd try

Throw

Manipulação estruturada de exceções:__try, __except

__finally

Manipulação de exceção C++:

tente, captura, throw

Manipulação de exceções CLR:

Tratamento de Exceção (Extensões de Componentes C++)

tente, captura, finally

throw

tentativa

com

finalmente

Estruturas de Decisão

Finalidade

Visual Basic

C++

C#

F#

Estruturas de decisão (seleção)

Selecionar...… CaseEnd select

opção, caso, opção

goto

interrupção

opção, case

Padrão

goto

interrupção

Correspondência de expressões

Estruturas de decisão (se…em)

Se…Then…Mais…End if

ElseIf

se, mais

se, mais

if… then… else

Estruturas de loop (condicional)

Quando…End while

Do...Loop

faça, quando

continue

faça

quando

continue

quando… faça

Estruturas de loop (iteração)

Para…Next

Para cada…Next

para

para

foreach

para a…

para dentro…

Matrizes

Finalidade

Visual Basic

C++

C#

F#

Declarar uma matriz

Escureça a() como long

int x 5 [];

int[] x = new int[5];

let x = [| 1; 2; 3; 4; 5 |]

Matrizes

Inicializar uma matriz

Escureça a() como long = {3, 4, 5}

int x 5 = []; {1,2,3,4,5}

int x = [] [] novo int 5 {1, 2, 3, 4, 5};

let x = [| 1; 2; 3; 4; 5 |]

Matrizes

Realocar a matriz

Redim

Não aplicável.

Não aplicável.

Não aplicável.

Escopo de classe

Finalidade

Visual Basic

C++

C#

F#

Visível fora do projeto ou do assembly

Público

Público

Público

Público

Visível somente dentro do assembly no qual ele foi declarado

Friend

Particular

interno

interno

Visível somente dentro do atual ou classes derivadas

Protegido

Não aplicável.

Protegido

Não aplicável.

O acesso é limitado para o assembly atual ou tipos derivados da classe contém.

Amigo Protegido

Tipo e a visibilidade de membro

protected internal

Níveis de acessibilidade

Não aplicável.

Visível somente dentro do projeto (para classes aninhadas dentro da classe, incluindo)

Privado

Particular

Particular

Particular

Escopo de membro

Finalidade

Visual Basic

C++

C#

F#

Classe, acessível projeto, e módulo de fora

Público

Público

Público

Público

Acessível fora da classe, mas dentro do projeto ou de pacote

Friend

public private

interno

interno

Acessível somente a atual e classes derivadas

Protegido

protegido

protegido

Não aplicável.

Acessível somente dentro da classe ou módulo

Privado

Particular

Particular

Particular

Especificar que uma função ou outra classe têm acesso a membros particulares da classe declarante

Não aplicável.

friend

Não aplicável.

Não aplicável.

Protegido dentro do assembly e particular para outros assemblies

Não aplicável.

protected private

Não aplicável.

Não aplicável.

O acesso é limitado para o assembly atual ou tipos derivados da classe contém

Amigo Protegido

Tipo e a visibilidade de membro

protected internal

Níveis de acessibilidade

Não aplicável.

Tempo de vida variado

Finalidade

Visual Basic

C++

C#

F#

Variáveis locais do procedimento preserve

Estático7

static

static

Não aplicável.

Compartilhado por todas as instâncias de uma classe

Compartilhado

static

static

static

Diversos

Finalidade

Visual Basic

C++

C#

F#

Código de comentário

'

REM

//,/* * para comentários de várias linhas

//,/* * para comentários de várias linhas

///de comentários XML

//, * (*) para comentários de várias linhas

Diferenciação de maiúsculas e minúsculas?

Não

Sim

Sim

Sim

A API do Windows

Declare <API>

Não aplicável.

usar invocação de plataforma

Usar invocação de plataforma.

Consulte Funções externas (F#).

Declare e gerar um evento

Evento

RaiseEvent

Não aplicável.

evento

Eventos

Primitivas de segmentação

SyncLock

Não aplicável.

bloqueio

bloqueio

Vá (a ramificação)

Goto

goto

goto

Não aplicável.

1 Em Visual Basic, o único local onde Static pode ser usado por si só para declarar uma variável — por exemplo, Static x As Long — está dentro de um procedimento.

2 Em Visual Basic, procedimentos declarado com a palavra-chave de Sub não podem retornar valores.Se um procedimento é retornar um valor, você deve declará-la com a palavra-chave de Function .

3 Em Visual Basic, Me não é resolvida em tempo de compilação, para que você possa usá-lo como o valor de retorno de uma propriedade ou um método.

4 Em Visual Basic, os construtores para classes derivadas de .NET FrameworkSystem.Object são nomeados sempre New.

5 Normalmente, o código em tal método libera os recursos de sistema que não poderiam ser liberados automaticamente pelo coletor de lixo.

6 Em C++, uma classe abstrata incluir pelo menos um membro puro virtual.

7 Em Visual Basic, variáveis locais de métodos estáticos não compartilhado da classe são armazenados por instância de classe ao invés de compartilhar uma cópia única, como em outras linguagens.Quando Static é usada para declarar uma variável, o valor dessa variável é preservado se a variável perde e recupera no escopo.

Consulte também

Referência

Conceitos de programação comparados em vários idiomas, com exemplos de código

Operadores de comparação em vários idiomas

Tipos de dados comparados em vários idiomas

Controles e objetos programáveis comparados em vários idiomas e bibliotecas

Outros recursos

Equivalentes do idioma