Udostępnij za pośrednictwem


Kompilacja warunkowa w Visual Basic

W kompilacji warunkowej określone bloki kodu w programie są kompilowane selektywnie, podczas gdy inne są ignorowane.

Na przykład możesz napisać instrukcje debugowania, które porównują szybkość różnych podejść do tego samego zadania programistycznego, lub możesz chcieć zlokalizować aplikację dla wielu języków. Instrukcje kompilacji warunkowej są przeznaczone do uruchamiania w czasie kompilacji, a nie w czasie wykonywania.

Należy określić bloki kodu, które mają być warunkowo skompilowane z dyrektywą #If...Then...#Else . Aby na przykład utworzyć wersje języka francuskiego i niemieckiego tej samej aplikacji na podstawie tego samego kodu źródłowego, osadzasz segmenty kodu specyficzne dla platformy w instrukcjach przy użyciu wstępnie #If...Then zdefiniowanych FrenchVersion stałych i GermanVersion. W poniższym przykładzie pokazano, jak:

#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

Jeśli ustawisz wartość stałej FrenchVersion kompilacji warunkowej na True wartość w czasie kompilacji, zostanie skompilowany kod warunkowy dla wersji francuskiej. Jeśli ustawisz wartość stałej GermanVersion na True, kompilator używa wersji niemieckiej. Jeśli żadna z nich nie jest ustawiona na Truewartość , kod w ostatnim Else bloku zostanie uruchomiony.

Uwaga

Autouzupełnianie nie będzie działać podczas edytowania kodu i używania dyrektyw kompilacji warunkowej, jeśli kod nie jest częścią bieżącej gałęzi.

Deklarowanie stałych kompilacji warunkowej

Stałe kompilacji warunkowej można ustawić na jeden z trzech sposobów:

  • W Projektant projektu

  • W wierszu polecenia podczas korzystania z kompilatora wiersza polecenia

  • W kodzie

Stałe kompilacji warunkowej mają specjalny zakres i nie można uzyskać dostępu z kodu standardowego. Zakres stałej kompilacji warunkowej zależy od sposobu ustawiania. W poniższej tabeli wymieniono zakres stałych zadeklarowanych przy użyciu każdego z trzech sposobów wymienionych powyżej.

Jak ustawiono stałą Zakres stałej
Projektant projektu Publiczne dla wszystkich plików w projekcie
Wiersz polecenia Publiczne do wszystkich plików przekazanych do kompilatora wiersza polecenia
#Const instrukcja w kodzie Prywatny do pliku, w którym jest zadeklarowany
Aby ustawić stałe w programie Project Projektant
— Przed utworzeniem pliku wykonywalnego ustaw stałe w programie Project Projektant, wykonując kroki opisane w temacie Zarządzanie właściwościami projektu i rozwiązania.
Aby ustawić stałe w wierszu polecenia
- Użyj przełącznika -d , aby wprowadzić stałe kompilacji warunkowej, jak w poniższym przykładzie:
vbc MyProj.vb /d:conFrenchVersion=–1:conANSI=0
Między przełącznikiem -d a pierwszą stałą nie jest wymagane żadne miejsce. Aby uzyskać więcej informacji, zobacz -define (Visual Basic).
Deklaracje wiersza polecenia zastępują deklaracje wprowadzone w Projektant project, ale nie wymazują ich. Argumenty ustawione w programie Project Projektant pozostają w mocy dla kolejnych kompilacji.
Podczas pisania stałych w samym kodzie nie ma rygorystycznych reguł dotyczących ich umieszczania, ponieważ ich zakres jest całym modułem, w którym są deklarowane.
Aby ustawić stałe w kodzie
- Umieść stałe w bloku deklaracji modułu, w którym są używane. Dzięki temu kod jest uporządkowany i łatwiejszy do odczytania.
Nazwa opis
Struktura programu i konwencje związane z kodami Zawiera sugestie ułatwiające odczytywanie i konserwację kodu.

Odwołanie

#Const, dyrektywa

#If...Then...#Else, dyrektywy

-define (Visual Basic)