Partilhar via


Palavras-chave comparadas em vários idiomas

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

Purpose

Visual Basic

C++

C#

F#

Declare uma variável

Dim

Public

Friend

Protected

Private

Shared

Estático1

declaradores (conceito, a palavra-chave não)

declaradores (palavras-chave incluem tipos definidos pelo usuário e tipos internos)

Deixe as ligações

Values

Declarar uma constante nomeada

Const

const

const

readonly

Deixe as ligações

Values

Criar uma nova instância de uma classe

New

novo

gcnew

novo

new

Criar um novo objeto

New

CreateObjectpara objetos COM

CoCreateInstance () (para objetos COM)

novo 

new

Atribuir um objeto a uma variável de objeto

=

=

=

<-

Função, método não retornar um valor.

Sub2

void

void

Tipo de unidade

Uma função ou método de sobrecarga (Visual Basic: um procedimento ou método de sobrecarga)

Overloads

(Nenhuma palavra-idioma chave necessário para essa finalidade)

(Nenhuma palavra-idioma chave necessário para essa finalidade)

override

Referência ao objeto atual

Me3

this

this

Use o self-identifier, conforme descrito em métodos ou membros

Fazer uma chamada nonvirtual para um método virtual do objeto atual

MyClass

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

Not applicable

Not applicable

Recuperar o caractere de uma seqüência de caracteres.

GetChar

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

str[10]onde str é uma seqüência de caracteres.

string

str.Chars(10)onde str é uma seqüência de caracteres.

Strings

Declarar um tipo de dados compostos (estrutura)

Structure

Class

Interface

class

struct

União

__interface

struct

class

interface

Classes

Inicializar um objeto (construtor)

Sub New ()4

construtores (conceito, a palavra-chave não)

Construtores, ou construtores de tipo de padrão do sistema

Construtores de classe

Constructors

Encerrar um objeto diretamente

Not applicable

~ClassName

Not applicable

Not applicable

Método chamado pelo sistema antes de coleta de lixo recupera um objeto5

Finalizar (em Visual Basic 6.0, Class_Terminate)

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

Destructors

Finalize

Garantia de que os recursos não gerenciados são descartados após o uso

Using

Not applicable

using

Resource Management

Inicializar uma variável onde ela é declarada

Dim x As Long = 5

Dim c As New Car(FuelTypeEnum.Gas)

/ / inicializar para um valor:

int x=5;

//with um construtor apropriado:

C c(10);

/ / inicializar para um valor:

int x = 123;

/ / ou usar o construtor padrão:

int x = new int();

let x = 123

Obter o endereço de uma função

AddressOf (Este operador retorna uma referência a uma função na forma de uma instância delegate)

delegate

delegate

Functions

Callback

Passe o endereço de uma função para outro que chama o chamador de volta. For an example, see Como: Passar Procedimentos para outro Procedimento em Visual Basic..

CALLBACK(um tipo padrão)

callback(Atributo IDL)

delegate

Not applicable

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

Not applicable

volatile

volatile

Not applicable

Forçar a declaração explícita de variáveis

Option 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)

Habilitar a inferência de tipo local

Option Infer

Inferência de tipo é ativada automaticamente

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

obj é nada

pobj == NULL

obj == null

Usar um tipo de opção em uma expressão de correspondência

Option

Expressões de correspondência

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

Nothing

nullptr

null

Valores nulos

Teste para uma expressão de banco de dados nula

IsDBNull

Not applicable

Not applicable

Not applicable

Testar se uma variável Variant foi inicializada.

Not applicable

Not applicable

Not applicable

Not applicable

Definir uma propriedade padrão

Default

property: o property palavra-chave se refere ao código gerenciado

Indexers

Propriedades indexadas

Object-Oriented Programming

Purpose

Visual Basic

C++

C#

F#

Consulte a classe base

MyBase

__super

base

base

Declarar uma interface.

Interface

__interface

interface class

interface

interface

Especificar uma interface a ser implementado.

Implements

(Basta derivar a partir da interface)

class C1 : public I1

class C1 : I1

Interfaces

interface

Declarar uma classe

Class

class

Classes and Structs (Managed)

class

tipo

Declarar um módulo

Module

static class

static class

módulo

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

Partial

Not applicable

Partial

No direct equivalent. See Extensões de tipo (F#).

Especifica uma classe só pode ser herdada. Não é possível criar uma instância da classe

MustInherit

abstract (Visual C++)6

abstract

Classes abstratas

Especificar que uma classe não pode ser herdada.

NotInheritable

sealed

sealed

SealedAttribute

Declarar um tipo enumerado

Enum

enum

enum

tipo

Declarar uma constante de classe

Const

const

Const (aplicadas a uma declaração de campo)

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

Derivar uma classe de uma classe base

Classe C1 herda C2

Class C1 : public Base(Nenhuma palavra-idioma chave necessário para essa finalidade)

class C1 : C2

class

Herdar

Substituir um método ou propriedade

Overrides

(Nenhuma palavra-chave de idioma necessário para essa finalidade, exceto override para /clr compilações — consulte Derived Classes)

override

override

Declara um método que deve ser implementado em uma classe derivada

MustOverride

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

abstract

abstract

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

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

sealed

sealed

Use o atributo Sealed

Declara um acessador de propriedade ou método ou propriedade virtual

Overridable

virtual

virtual

abstract, conforme descrito em métodos

Ocultar um membro da classe base em uma classe derivada

Shadowing

new (new slot in vtable)

novo

Não é permitido ocultar um método virtual ou abstract

Declarar uma referência a um método de classe de typesafe

Delegate

delegate

delegate

myObj.myFunctiononde myObj é um objeto e myMethod é um método disponível naquele objeto

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

WithEvents

Not applicable

(Não escreva o código - nenhuma palavra-chave específica)

Not applicable

Especifique os eventos para o qual um procedimento de evento será chamado.

Manipula (procedimentos de evento ainda podem ser associados com um WithEvents variável pelo padrão de nomenclatura)

Not applicable

evento eventHandler de + =;

Not applicable

Avaliar uma expressão de objeto de uma vez, para acessar vários membros

Com... Terminar com

Not applicable

Not applicable

Not applicable

Exception Handling

Purpose

Visual Basic

C++

C#

F#

Manipulação de exceção

Try... Catch... Finalmente... End Try

Throw

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

__finally

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

Tente, catch, throw

Manipulação de exceção do CLR:

Exception Handling under /clr

Tente, catch, finally

throw

try

com

finally

Decision Structures

Purpose

Visual Basic

C++

C#

F#

Estrutura de decisão (seleção)

Selecione... Case... Finalizar seleção

padrão de maiúsculas, switch,

goto

break

switch, caso

default

goto

break

Expressões de correspondência

Estrutura de decisão (if... em seguida)

IF... Então... Else... End If

ElseIf

IF, else

IF, else

IF... e... else

Estrutura de loop (condicional)

While... Final ao mesmo tempo

Fazer...Loop

, enquanto

continue

do

while

continue

While... fazer

Estrutura de loop (iteração)

Para... Next

Para cada... Next

for

for

foreach

loop for... para

loop for... no

Arrays

Purpose

Visual Basic

C++

C#

F#

Declarar uma matriz

Dim a() As Long

int x [5];

int[] x = new int[5];

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

Arrays

Inicializar uma matriz

Dim a() As Long = {3, 4, 5}

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

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

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

Arrays

Realocar matriz

ReDim

Not applicable

Not applicable

Not applicable

Escopo de classe

Purpose

Visual Basic

C++

C#

F#

Visível fora do projeto ou assembly

Public

pública

pública

pública

Visível somente dentro do assembly no qual é declarada

Friend

private

internal

internal

Visível somente dentro de classes atuais ou derivados

Protected

Not applicable

Protected

Not applicable

O acesso é limitado ao conjunto atual ou tipos derivados da classe que contém.

Protected Friend

Type and Member Visibility

protected internal

Níveis de acessibilidade

Not applicable

Visível somente dentro do projeto (para classes aninhadas, a classe de encerramento)

Private

private

private

private

Escopo de membro

Purpose

Visual Basic

C++

C#

F#

Acessível fora do módulo de classe e projeto

Public

pública

pública

pública

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

Friend

public private

internal

internal

Acessível somente a classes derivadas e atuais

Protected

protegido

protegido

Not applicable

Acessível somente dentro da classe ou módulo

Private

private

private

private

Especificar que uma função ou outra classe tenha acesso a membros de particulares da classe declarativo

Not applicable

amigo

Not applicable

Not applicable

Protegido dentro do assembly e particular para outros assemblies

Not applicable

protected private

Not applicable

Not applicable

O acesso é limitado ao conjunto atual ou tipos derivados da classe contendo

Protected Friend

Type and Member Visibility

protected internal

Níveis de acessibilidade

Not applicable

Tempo de vida de diversos

Purpose

Visual Basic

C++

C#

F#

Preservar a variáveis locais do procedimento.

Estático7

static

static

Not applicable

Compartilhados por todas as instâncias de uma classe

Shared

static

static

static

Miscellaneous

Purpose

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

/ / / para comentários XML

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

Diferencia maiúsculas de minúsculas?

No

Yes

Yes

Yes

Chamar a API do Windows

Declarar <API>

Not applicable

usar invocação de plataforma

Use invocação de plataforma.

See Funções externas (F#).

Declarar e dispara um evento

Event

RaiseEvent

Not applicable

event

Events

Primitivos de Threading

SyncLock

Not applicable

lock

lock

Vá para a (ramificação)

GoTo

goto

goto

Not applicable

1 Na Visual Basic, a apenas colocar onde Static pode ser usado sozinho para declarar uma variável — por exemplo, Static x As Long — está dentro de um procedimento.

2 Na Visual Basic, procedimentos declarado com o Sub palavra-chave não pode retornar valores. Se um procedimento retornar um valor, você precisa declará-la com o Function palavra-chave.

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

4 Na Visual Basic, construtores de classes derivadas de .NET Framework System.Object sempre são nomeados New.

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

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

7 Na Visual Basic, variáveis locais estáticas dos métodos de classe compartilhada são armazenadas por instância de classe em vez de compartilhar uma única cópia, como em outros idiomas. Quando Static é usado para declarar uma variável, o valor dessa variável é preservado mesmo se a variável perde e, em seguida, recupera o escopo.

Consulte também

Referência

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

Operadores comparados 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