Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A feltételes fordítás során a program egyes kódblokkjainak fordítása szelektíven, másokat figyelmen kívül hagyva.
Előfordulhat például, hogy olyan hibakeresési utasításokat szeretne írni, amelyek összehasonlítják ugyanahhoz a programozási feladathoz képest a különböző megközelítések sebességét, vagy több nyelvre szeretné honosítani az alkalmazásokat. A feltételes fordítási utasítások úgy vannak kialakítva, hogy a fordítási idő alatt fussanak, nem pedig futásidőben.
Ön a #If...Then...#Else irányelvet használva jelöli meg azokat a kódblokkokat, amelyeket feltételesen kell lefordítani. Például, ha ugyanazon alkalmazás francia- és német nyelvű verzióit szeretné létrehozni ugyanabból a forráskódból, az előre definiált állandók, mint amilyen a #If...Then és FrenchVersion segítségével platformspecifikus kódszegmenseket ágyazhat be a GermanVersion utasításokba. Az alábbi példa bemutatja, hogyan:
#If FrenchVersion Then
' <code specific to the French language version>.
#ElseIf GermanVersion Then
' <code specific to the German language version>.
#Else
' <code specific to other versions>.
#End If
Ha a FrenchVersion feltételes fordítási állandó értékét fordítási időpontra True állítja, a rendszer lefordítja a francia verzió feltételes kódját. Ha az GermanVersionállandó értékét True-re állítja, a fordító a német verziót használja. Ha egyik sincs beállítva True, az utolsó Else blokk kódja fut.
Megjegyzés:
Az automatikus kiegészítés nem fog működni a kód szerkesztésekor és a feltételes fordítási irányelvek használatakor, ha a kód nem része az aktuális ágnak.
Feltételes fordítási állandók deklarálása
A feltételes fordítási állandókat háromféleképpen állíthatja be:
A Projekttervezőben
Parancssorban, amikor a parancssori fordítót használja
A kódban
A feltételes fordítási állandók speciális hatókörrel rendelkeznek, és nem érhetők el a standard kódból. A feltételes fordítási állandó hatóköre a beállítás módjától függ. Az alábbi táblázat a fent említett három módszer mindegyikével deklarált állandók hatókörét sorolja fel.
| Hogyan van beállítva az állandó? | Az állandó hatóköre |
|---|---|
| Projekttervező | Nyilvános a projekt összes fájlja számára |
| Parancssor | A parancssori fordítónak átadott összes fájl nyilvános |
#Const kódbeli utasítás |
Privát ahhoz a fájlhoz, amelyben deklarálva van |
| Állandók beállítása a Project Designerben |
|---|
| – A végrehajtható fájl létrehozása előtt állítsa be az állandókat a Project Designerben a Projekt- és megoldástulajdonságok kezelésével kapcsolatos lépések végrehajtásával. |
| Állandók beállítása a parancssorban |
|---|
- A -d kapcsolóval feltételes fordítási állandókat adhat meg, ahogyan az alábbi példában is látható:vbc MyProj.vb /d:conFrenchVersion=–1:conANSI=0Nincs szükség szóközre a -d kapcsoló és az első állandó között. További információ: -define (Visual Basic). A parancssori deklarációk felülírják a Projekttervezőben megadott deklarációkat, de nem törlik őket. A Project Designerben beállított argumentumok továbbra is érvényben maradnak a későbbi fordítások esetében. Amikor állandókat ír a kódba, nincsenek szigorú szabályok az elhelyezésükre, mivel a hatókörük az egész modul, amelyben deklarálva vannak. |
| Állandók beállítása a kódban |
|---|
| - Helyezze az állandókat annak a modulnak a deklarációs blokkjára, amelyben azokat használják. Ez segít a kód rendszerezésében és könnyebb olvashatóságában. |
Kapcsolódó témakörök
| Cím | Leírás |
|---|---|
| Programstruktúra és kódkonvenciók | Javaslatokat nyújt a kód egyszerű olvashatóságához és karbantartásához. |