hlmod.hu
https://hlmod.hu/

Const vagy define
https://hlmod.hu/viewtopic.php?f=9&t=23368
Oldal: 1 / 1

Szerző:  CoCo [ 2015.12.31. 17:28 ]
Hozzászólás témája:  Const vagy define

Sziasztok meik a egyszerubb Const vagy Define ?

Szerző:  kengurumancs [ 2015.12.31. 17:41 ]
Hozzászólás témája:  Re: Const vagy define

#Define

Szerző:  CrB [ 2015.12.31. 18:03 ]
Hozzászólás témája:  Re: Const vagy define

attól függ mire akarod használni.

Szerző:  CoCo [ 2015.12.31. 18:18 ]
Hozzászólás témája:  Re: Const vagy define

CrB írta:
attól függ mire akarod használni.

hat ilyen cvarkent csak pluginba lehetsen valtani

Szerző:  Akosch:. [ 2016.01.01. 03:03 ]
Hozzászólás témája:  Re: Const vagy define

Helyzet függő:
#define:
Még fordítási időben behelyettesítődik az érték, ez pl hasznos ha a max játékos számot szeretnéd megadni változókhoz.
  1. #define MAX_PLAYERS 32
  2.  
  3. new iVariable[ MAX_PLAYERS + 1 ];
  4. //Fordítás után vhogy így képzeld el:
  5. new iVariable[ 32 + 1 ];
  6.  
  7. //Másik példa karakterlánccal
  8. #define STRING "harminckettő"
  9.  
  10. client_print( iPlayerId, print_chat, "%s", STRING );
  11. //Után:
  12. client_print( iPlayerId, print_chat, "%s", "harminckettő" );

Hátránya, hogy mindenhol ahol behelyettesíti új helyen tárolja a memóriában ( pawn -ban nincs optimalizálva ez a dolog ).

const:
Futási időben foglal magának helyet 1x és onnantól tudsz rá hívatkozni. Ezért is érdemes ezt használni karakterláncokhoz, hiszen nem fog egy adat többször különböző helyeken szerepelni, csupán 1x. + ha nincs rá szükséged, h fordítási időben legyen behelyettesítve az érték, akkor lehet a const kulcsszóval is definiálni egy változót.
  1. //Int
  2. const g_iVar = 5;
  3. //Float
  4. const Float:g_fVar = 5.0;
  5. //String
  6. new const g_sVar[ ] = "öt egész";


Asszem tömören, konyhanyelven ennyi pawn szempontból.

Szerző:  mforce [ 2016.01.01. 11:42 ]
Hozzászólás témája:  Re: Const vagy define

CoCo írta:
CrB írta:
attól függ mire akarod használni.

hat ilyen cvarkent csak pluginba lehetsen valtani


Cvarként nem fogod

Szerző:  CoCo [ 2016.01.01. 13:41 ]
Hozzászólás témája:  Re: Const vagy define

Akosch:. írta:
Helyzet függő:
#define:
Még fordítási időben behelyettesítődik az érték, ez pl hasznos ha a max játékos számot szeretnéd megadni változókhoz.
  1. #define MAX_PLAYERS 32
  2.  
  3. new iVariable[ MAX_PLAYERS + 1 ];
  4. //Fordítás után vhogy így képzeld el:
  5. new iVariable[ 32 + 1 ];
  6.  
  7. //Másik példa karakterlánccal
  8. #define STRING "harminckettő"
  9.  
  10. client_print( iPlayerId, print_chat, "%s", STRING );
  11. //Után:
  12. client_print( iPlayerId, print_chat, "%s", "harminckettő" );

Hátránya, hogy mindenhol ahol behelyettesíti új helyen tárolja a memóriában ( pawn -ban nincs optimalizálva ez a dolog ).

const:
Futási időben foglal magának helyet 1x és onnantól tudsz rá hívatkozni. Ezért is érdemes ezt használni karakterláncokhoz, hiszen nem fog egy adat többször különböző helyeken szerepelni, csupán 1x. + ha nincs rá szükséged, h fordítási időben legyen behelyettesítve az érték, akkor lehet a const kulcsszóval is definiálni egy változót.
  1. //Int
  2. const g_iVar = 5;
  3. //Float
  4. const Float:g_fVar = 5.0;
  5. //String
  6. new const g_sVar[ ] = "öt egész";


Asszem tömören, konyhanyelven ennyi pawn szempontból.

Ertem koszonom :)

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/