Irányelv (programozás)

A programozásban az „irányelv” (jelzés) kifejezés használatában hasonló a „ parancs ” kifejezéshez, és bizonyos programozási nyelvi konstrukciók leírására is használatos (vagyis utasítások a fordítónak vagy az assemblernek a feldolgozási jellemzőkről a fordítás során).

Összeszerelési nyelv

Az assembly nyelven az direktívák általános információkat adnak meg, például a célkörnyezetet, a szakaszok közötti határvonalakat és így tovább. Például az "ALIGN" direktíva, amely a szükséges számú bájtot beszúrja az aktuális szakaszba a sorok igazításához, amelyet gyakran "irányelvnek" neveznek, ellentmond annak a ténynek, hogy a generált kódban lévő konstrukciók részeit egyezteti.

A C előfeldolgozó

A C és C++ programozási nyelvek beépített előprocesszor-támogatással rendelkeznek. A forráskód sorai, amelyeket az előfeldolgozónak kell feldolgoznia a formában #define, és ezeket előfeldolgozó direktíváknak#include nevezzük .

Más magas szintű nyelveken

A C előfeldolgozó direktívákhoz hasonló szintaktikai konstrukciókat, például #regiona C# -ban lévőket, gyakran "direktíváknak" is nevezik, bár ezekben az esetekben előfordulhat, hogy nincs előfeldolgozó lépés.

Az Adában a fordítói direktívákat pragmáknak (a "pragmatic information" rövidítése) nevezik.

A Pascalban az utasításokat pointer megjegyzéseknek nevezik, mert szintaxisukban hasonlóak a megjegyzésekhez . Pascalban a leíró megjegyzés olyan megjegyzés, amelynek első karaktere egy dollárjel ; például egy #include "file"C nyelvű direktíva megfelelője egy leíró megjegyzés lenne {$I "file"}.

A Perlben az " " ("apply") kulcsszó usehasználható "pragmaként", például use strict;vagy use utf8;. Az ilyen konstrukciót néha „irányelvnek” is nevezhetjük. Egyes források [1] azonban a "Perl direktívák" kifejezést használják a shebang típusú konstrukciókra .

A Haskellnek megvan a maga pragmája. Lehetővé teszik nyelvi kiterjesztések beillesztését, passz-összeállítási lehetőségeket, és vannak speciális gyakorlatok is. Például jelzik a fordítónak, hogy szükséges/nem szükséges egy függvényt beilleszteni (a C-beli kulcsszóhoz hasonlóan {-# INLINE #-}) . A {-# UNBOXED #-} lehetővé teszi az adatok többletterhelés nélküli tárolását (memóriahatékonyság a rugalmasság rovására). egy típusosztály speciális képviselőinek felülbírálására szolgál kivételes helyzetekben. Vannak HPP-kiterjesztések is – a Haskell saját előfeldolgozója és a CPP (C PreProcessor) –, amelyek a C előfeldolgozót hívják. {-# NOINLINE #-}inline{-# SPECIALIZE #-}

Lásd még

Jegyzetek

  1. Mi a Perl elérési útja?

Linkek