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=0 Nincs 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. |