Sdílet prostřednictvím


Klíčová slova ve srovnání v různých jazycích

Toto téma obsahuje seznam běžných programovacích úloh, které mohou být sumarizovány pomocí klíčového slova jazyka.Další informace o úkolech, které potřebují příklady kódu naleznete v tématu Programovací pojmy porovnání v různých jazycích a s příklady kódu.

Účel

Visual Basic

C++

C#

F#

Deklarování proměnné

Dim

Veřejné

Přítel

Chráněné

Soukromé

Sdílené

Static1

declarators (pojem, nikoli klíčové slovo)

declarators (klíčová slova zahrnout předdefinované typy a typy definované uživatelem)

Nechť vazby

Hodnoty

Deklarovat pojmenované konstanty

Const

Const

Const

jen pro čtení

Nechť vazby

Hodnoty

Vytvořte novou instanci třídy

Nové

Nový

ref new, gcnew (rozšíření komponent C++)

Nový

new

Vytvořte nový objekt

Nové

CreateObjectpro objekty COM.

CoCreateInstance() (pro objekty modelu COM)

Nový 

new

Přiřaďte objekt proměnné objektu

=

=

=

<-

Funkce/metoda nevrací hodnotu

Sub2

anulovat

anulovat

Typ jednotky

Přetížení funkce nebo metody (Visual Basic: přetížení procedury nebo metody)

Přetížení

(Žádný jazyk klíčové potřebných k tomuto účelu)

(Žádný jazyk klíčové potřebných k tomuto účelu)

override

Vytvořte odkaz na aktuální objekt

Me3

To

To

Použít self-identifier, jak je popsáno v metody nebo členy

Nevirtuální volání virtuální metody aktuálního objektu

Moje_třída

MyClass::Func1(), kde MyClass je třída C++ pomocí členské funkce Func1.

Nelze použít

Nelze použít

Načtení znaku z řetězce

GetChar, nebo str(10) kde str je řetězec

*(p + 10)nebo p[10] kde p je char * nebo wchar_t *

str[10]kde str je řetězec

string

str.Chars(10)kde str je řetězec

Řetězce

Deklarovat složený datový typ (struktura)

Struktura

Třída

Rozhraní

Třída

Struktura

unie

__interface

Struktura

Třída

rozhraní

Třídy

Inicializace objektu (konstruktor)

Sub New()4

konstruktory (pojem, nikoli klíčové slovo)

Konstruktory nebo systémové výchozí typ konstruktory

Konstruktory tříd

Konstruktory

Ukončit objekt přímo

Nelze použít

~Název třídy

Nelze použít

Nelze použít

Metoda volána systémem těsně před uvolňování získá objekt5

Finalizovat (v jazyce Visual Basic 6.0, Class_Terminate)

Destruktory (C++)(pojem, nikoli klíčové slovo)

Destruktory

Finalize

Záruka, že nespravované prostředky jsou odstraněny po použití

Použití

Nelze použít

pomocí

Správa prostředků

Inicializovat proměnnou, kde je deklarována

Dim x As Long = 5

Dim c As New Car(FuelTypeEnum.Gas)

/ / Inicializace na hodnotu:

int x=5;

//with odpovídající konstruktor:

C c(10);

/ / Inicializace na hodnotu:

int x = 123;

/ / nebo pomocí výchozího konstruktoru:

int x = new int();

let x = 123

Přijmout adresa funkce

AddressOf (Tento operátor vrací odkaz na funkci v podobě instanci delegáta)

delegate (rozšíření komponent C++)

Delegát

Funkce

Zpětné volání

Adresa jednu funkci předáte do druhého, který volá zpět původce.Příklad naleznete v tématu Jak: postupy předat jiné procedury v jazyce Visual Basic.

CALLBACK(standardní typ)

callback(Atribut IDL)

Delegát

Nelze použít

Prohlásit, že objekt lze upravit asynchronně

Nelze použít

nestálá

nestálá

Nelze použít

Vynucení explicitní deklaraci proměnných

Option Explicit

Není k dispozici (všechny proměnné musí být deklarovány předem použití)

Není k dispozici (všechny proměnné musí být deklarovány předem použití)

Není k dispozici (všechny proměnné musí být deklarovány předem použití)

Povolit odvození typu místní

Možnost Infer

Odvození typu proměnné je automaticky povolena.

Test pro proměnnou objektu, která neodkazuje na objekt

obj je nic

pobj == NULL

obj == null

Typ možnosti použít ve výrazu shoda

Možnost

Shoda výrazy

Hodnota proměnné objektu, který neodkazuje na objekt

Nic

nullptr

Null

Hodnoty Null

Test databáze null výraz

IsDBNull

Nelze použít

Nelze použít

Nelze použít

Otestujte, zda byla inicializována proměnná Variant

Nelze použít

Nelze použít

Nelze použít

Nelze použít

Definovat výchozí vlastnost.

Výchozí

property: propertyklíčové slovo označuje spravovaný kód

Indexování

Indexované vlastnosti

Objektově orientované programování

Účel

Visual Basic

C++

C#

F#

Naleznete v základní třídě.

MyBase

__super

základní

základní

Deklarovat rozhraní

Rozhraní

__interface

interface class (rozšíření komponent C++)

rozhraní

rozhraní

Určete rozhraní mají být provedeny

Implementuje

(Pouze jsou odvozeny z rozhraní)

class C1 : public I1

class C1 : I1

Rozhraní

rozhraní

Deklarujte třídu

Třída

Třída

Třídy a struktury (rozšíření komponent C++)

Třída

typ

Deklarovat modul

Modul

static class

static class

modul

Deklarovat částečnou definici třídy nebo struktury

Částečné

Nelze použít

Částečné

Ekvivalent.Viz téma Typ rozšíření (F#).

Určete, zda lze pouze dědit třídu.Nelze vytvořit instanci třídy

MustInherit

abstract (rozšíření komponent C++)6

abstract

Abstraktní třídy

Určit, že nemůžou být zděděny třídy

NotInheritable

sealed (rozšíření komponent C++)

sealed

SealedAttribute

Deklarovat Výčtový typ

Výčet

výčet

výčet

typ

Deklarovat třídu konstanta

Const

Const

Const (použito k deklaraci pole)

Neměnný (konstantní) ve výchozím nastavení jsou hodnoty.Viz téma Hodnoty (F#).

Třídu odvodit ze základní třídy

Dědí třídy C1, C2

Class C1 : public Base(Žádný jazyk klíčové potřebných k tomuto účelu)

class C1 : C2

Třída

dědit

Přepsat metodu nebo vlastnost

Lokální změny

(Žádné klíčové slovo jazyka potřebných k tomuto účelu, s výjimkou override (rozšíření komponent C++) pro/CLR kompilace – viz Odvozené třídy)

override

override

Deklarovat metodu, která musí být prováděny v odvozená třída

MustOverride

Vložit = 0 na konci prohlášení (čistě virtuální metoda)

abstract

abstract

Deklarovat metodu, která nemůže být přepsáno.

NotOverridable (metody jsou NotOverridable ve výchozím nastavení.)

sealed (rozšíření komponent C++)

sealed

Použijte atribut Sealed

Deklarovat virtuální metodu nebo vlastnost nebo vlastnost přistupujícího objektu

Overridable

virtual

virtual

abstract, jak je popsáno v metody

Skrýt základní třídy člen v odvozené třídě.

Stínový provoz

new (nový slot v tabulce vtable) (rozšíření komponent C++)

Nový

Skrytí virtuální nebo abstraktní metodu není povoleno.

Deklarovat ověřitelný odkaz na metodu třídy

Delegát

delegate (rozšíření komponent C++)

Delegát

myObj.myFunctionkde myObj je objekt a myMethod je k dispozici v objektu metoda

Určit, že proměnná může obsahovat objekt jehož události chcete zpracovat

WithEvents

Nelze použít

(Zapsat kód - žádná specifická klíčová slova)

Nelze použít

Zadejte události, pro které bude volána procedura události

Zpracovává (událostní procedury můžete stále spojené s WithEvents podle vzor pro pojmenování proměnné)

Nelze použít

Obslužná rutina události += událostí;

Nelze použít

Vyhodnotí výraz objekt jednou, chcete-li získat přístup k více členů

S...Na konci

Nelze použít

Nelze použít

Nelze použít

Zpracování výjimek

Účel

Visual Basic

C++

C#

F#

Zpracovávání výjimek

Zkuste...Úlovek...Nakonec...End Try

Projekce

Strukturované zpracování výjimek: __try, __except

__finally

Zpracování výjimek C++:

Zkuste, catch, throw

Zpracování výjimek modulu CLR:

Zpracování výjimek (rozšíření komponent C++)

Zkuste, zachycení konečně

projekce

Zkuste

tímto kódem:

Nakonec

Rozhodnutí struktur

Účel

Visual Basic

C++

C#

F#

Struktura rozhodnutí (výběr)

Vybrat...Případ...End Select

výchozí případu, přepínače,

příkaz goto

Konec

přepínač, případ

výchozí

příkaz goto

Konec

Shoda výrazy

Struktura rozhodnutí (if...potom)

If...Poté...Jinak...End If

ElseIf

IF, else

IF, else

If... a... else

Strukturu smyčky (podmíněný)

Při...Konec při

Ano...Smyčka

, zatímco

pokračovat

proveďte

Při

pokračovat

While...

Strukturu smyčky (opakování)

Pro...Další

Pro každou...Další

pro

pro

foreach

for... k

for... v

Matice

Účel

Visual Basic

C++

C#

F#

Deklarujte matice

Dim a() tak dlouho, dokud

int x [5];

int[] x = new int[5];

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

Matice

Inicializace pole

Tak dlouho, dokud Dim a() = {3, 4, 5}

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

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

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

Matice

Přerozdělování pole

ReDim

Nelze použít

Nelze použít

Nelze použít

Třída oboru

Účel

Visual Basic

C++

C#

F#

Viditelné mimo projekt nebo sestavení

Veřejné

public

public

public

Deklarované viditelné pouze v rámci sestavení, ve kterém

Přítel

private

vnitřní

vnitřní

Viditelné pouze v rámci aktuálního nebo odvozené třídy

Chráněné

Nelze použít

Chráněné

Nelze použít

Přístup je omezen na aktuální sestavení nebo typy odvozené od třídy obsahující.

Protected Friend.

Typ a viditelnost členské

protected internal

Úrovně přístupu

Nelze použít

Viditelné pouze v rámci projektu (pro vnořené třídy v rámci ohraničující třídy)

Soukromé

private

private

private

Člen oboru

Účel

Visual Basic

C++

C#

F#

Přístupné vně třídy, projekt a modul

Veřejné

public

public

public

Přístupný vně třídy, ale v rámci projektu nebo balíček

Přítel

public private

vnitřní

vnitřní

Přístupný pouze pro aktuální a odvozené třídy

Chráněné

protected

protected

Nelze použít

Přístupné pouze uvnitř třídy nebo modulu

Soukromé

private

private

private

Zadejte funkci nebo jiné třídy má přístup k soukromé členy deklarující třída

Nelze použít

přítel

Nelze použít

Nelze použít

Chráněný uvnitř sestavení a soukromé jiných sestavení

Nelze použít

protected private

Nelze použít

Nelze použít

Přístup je omezen na aktuální sestavení nebo typy odvozené od třídy obsahující

Protected Friend.

Typ a viditelnost členské

protected internal

Úrovně přístupu

Nelze použít

Různé životnost

Účel

Visual Basic

C++

C#

F#

Zachovat lokální proměnné procedury

Static7

static

static

Nelze použít

Sdíleny všechny instance třídy

Sdílené

static

static

static

Různé

Účel

Visual Basic

C++

C#

F#

Kód komentář

'

REM

/ / / * * / for Víceřádkové komentáře

/ / / * * / for Víceřádkové komentáře

/ / / XML komentářů

/ /, (* *) pro víceřádkové komentáře

Malá a velká písmena?

Ne

Ano

Ano

Ano

Volání rozhraní API systému Windows

Deklarovat <API>

Nelze použít

pomocí volání nespravovaného kódu

Pomocí volání nespravovaného kódu.

Viz téma Externí funkce (F#).

Deklarovat a vyvolat události

Událost

RaiseEvent

Nelze použít

Událost

Události

Threading primitiv

SyncLock

Nelze použít

Zámek

Zámek

Přejít na (pobočka)

Příkaz goto

příkaz goto

příkaz goto

Nelze použít

1 v Visual Basic, pouze místo, kde Static lze použít samostatně pro deklarování proměnné, například Static x As Long – je v rámci procedury.

2 v Visual Basic, postupy deklarována s Sub klíčové slovo nemůže vracet hodnoty.Je-li postup vrátit hodnotu, je třeba deklarovat s Function klíčové slovo.

3 v Visual Basic, Me není vyřešen v době kompilace, takže je možné použít jako návratovou hodnotu vlastnosti nebo metody.

4 v Visual Basic, konstruktory pro třídy odvozené z .NET FrameworkSystem.Object jsou vždy s názvem New.

5 , Obvykle kód do tato metoda uvolní systémové prostředky, které by automaticky uvolněn systémem uvolňování.

6 v jazyce C++ abstraktní třídy obsahuje alespoň jednu prázdnou virtuální členskou.

7 v Visual Basic, statické místní proměnné metod sdíleném třídy jsou uloženy na instanci třídy namísto sdílení jedné kopie, stejně jako v jiných jazycích.Při Static je pro deklarování proměnné, hodnota této proměnné zachována i v případě, že proměnná ztratí a poté i oboru.

Viz také

Referenční dokumentace

Programovací pojmy porovnání v různých jazycích a s příklady kódu

Operátory porovnání v různých jazycích

Datové typy, porovnání v různých jazycích

Ovládací prvky a programovatelné objekty v různých jazycích a knihoven v porovnání

Další zdroje

Ekvivalenty jazyk