Mi a #define irányelv a C++ nyelven

Mi A Define Iranyelv A C Nyelven



Az előfeldolgozás a C++ nyelven a programfordítás vagy -fordítás kezdeti fázisára utal, amikor a forrásprogramfájlt az előfeldolgozói direktívák alapján módosítják. Ezeket az irányelveket a # szimbólumot, az előfeldolgozó hajtja végre, és a fő program végrehajtása előtt befolyásolják a forráskódot.

A C++ előfeldolgozó direktíváit a # (hash) szimbólum az állítás elején. A C++ általános előfeldolgozó direktívái közé tartozik fájl felvétel és makrók meghatározás. Ezek a direktívák általában a main() függvényen kívül helyezkednek el a C++ program tetején. Az előfeldolgozás során egy köztes fájl a .én kiterjesztés jön létre.

#define irányelv C++-ban

A C++-ban a #define direktíva egy előfeldolgozó direktíva, amelyet konstansok vagy makrók meghatározására használnak. Lehetővé teszi szimbolikus nevek vagy értékek meghatározását, amelyek az egész kódban behelyettesítésre kerülnek, mielőtt a tényleges fordítási folyamat megtörténne.







Íme a #define előfeldolgozó főbb jellemzői



  • A C++-ban a #define előfeldolgozó direktíva a makrók meghatározására szolgál.
  • A makrók a C++-ban a #define direktívával deklarált konstansok vagy kifejezések.
  • A #define direktívákat makró direktíváknak is nevezik.
  • Ha egy #define direktívával találkozunk egy C++ programban, akkor a definiált makró nevét egy állandó értékkel vagy kifejezéssel helyettesítjük a kezdeti fordítási szakaszban.

A #define irányelv szintaxisa

A #define direktíva használatának szintaxisa a következő:



#define azonosító érték

Ahol az azonosító a definiálás alatt álló konstans vagy makró neve, az érték pedig az az érték, amellyel le kell cserélni a kód fordításakor.





Példa a #define irányelvre

Az alábbi példa elmagyarázza, hogyan használható a #define direktíva C++ kódban:

#include

#define PI 3.14159

#define NEGYED(x) ((x) * (x))

int fő- ( ) {

kettős sugár = 5.0 ;

kettős terület = PI * NÉGYZET ( sugár ) ;

std :: cout << 'Terület: ' << terület << std :: endl ;

Visszatérés 0 ;

}

Ebben a példában két állandót definiálunk a #define direktíva segítségével: a PI-t, amely a pi matematikai állandót jelöli, és a SQUARE-t, amely egy adott érték négyzetét kiszámító makró. Ezután ezeket az állandókat használjuk a kódunkban egy adott sugarú kör területének kiszámításához.



A #define és a const közötti különbség

Az egyik gyakori kérdés, amely a #define direktíva tárgyalásakor felmerül, hogy miben különbözik a const változók C++-ban való használatától. Bár mindkét megközelítés lehetővé teszi a kódban használható állandók meghatározását, van néhány lényeges különbség közöttük.

Egy lényeges különbség között #define és const az, hogy a #define egy előfeldolgozó direktíva, míg a const egy kulcsszó, amely magának a C++ nyelvnek a része. Ez azt jelenti, hogy a #define segítségével definiált konstansokat a kód lefordítása előtt lecseréljük az értékükre, míg a const változókat maga a fordító kezeli.

Egy másik lényeges különbség a #define és a const között, hogy a const változóknak van egy meghatározott típusa, míg a #define segítségével definiált konstansoknak nincs. Ez azt jelenti, hogy a const változókat olyan helyeken használhatja, ahol egy adott típusra van szükség, míg a #define segítségével definiált konstansok nem mindig működnek ilyen helyzetekben.

Következtetés

A #define direktíva egy előfeldolgozó direktíva, amelyet állandók vagy makrók meghatározására használnak. Lehetővé teszi számunkra, hogy szimbolikus neveket vagy értékeket definiáljunk, amelyeket az egész kódban helyettesítünk, mielőtt a tényleges fordítási folyamat megtörténik. Ebben a cikkben olvashat bővebben a #define direktíváról a C++ nyelven.