Innehållsförteckning:
- Nyckelskillnad - Makro vs inbyggd funktion
- Vad är makro?
- Vad är Inline-funktion?
- Vad är skillnaden mellan makro och inline-funktion?
- Sammanfattning - Makro vs inbyggd funktion
Video: Skillnaden Mellan Makro Och Inline-funktion
2024 Författare: Mildred Bawerman | [email protected]. Senast ändrad: 2023-12-16 08:42
Nyckelskillnad - Makro vs inbyggd funktion
Ett makro är ett kodfragment, vilket är ett förprocessordirektiv. En inline-funktion är en C ++ -förbättringsfunktion för att minimera körningstiden för ett program. Därför är nyckelskillnaden mellan makro och inline-funktion att ett makro kontrolleras av förprocessorn medan en inline-funktion kontrolleras av kompilatorn.
Ett makro ingår i början av programmet som föregås av ett hash-tecken. När det finns makronamnet i programmet ersätts det med innehållet i makrot.
INNEHÅLL
1. Översikt och nyckeldifferens
2. Vad är makro
3. Vad är inline-funktion
4. Jämförelse sida vid sida - Makro mot inline-funktion i tabellform
5. Sammanfattning
Vad är makro?
Förprocessorn är ett program som behandlar källkoden innan den passerar genom kompilatorn. Den fungerar med kommandoraden preprocessor eller direktiven. I programmet placeras förprocessordirektiven i källprogrammet före huvudprogrammet. Innan källkoden går igenom kompilatorn kontrolleras den av förprocessorn för förprocessordirektiv. Förprocessordirektiven har symbolen #. Till skillnad från andra uttalanden slutar de inte med semikolon. En typ av förprocessordirektiv är makro. I allmänhet är makron skrivna med stora bokstäver.
Figur 01: C ++ - program med makron
Enligt ovanstående program indikerar rad 3 och rad 4 makron. Vid beräkning av arean ersätts PI-värdet med det definierade makrot. I rad 14, volym = CUBE (värde), expanderar förprocessorn uttalandet som volym = (värde * värde * värde). Att hitta kuben kan skrivas som en funktion, men här skrivs den med ett makro. Om det finns ett uttalande som volym = CUBE (x + y) expanderar det till volym = (x + y * x + y * x + y).
Vissa programmeringstoken kan lätt skrivas fel. De kan bytas ut med makron. t.ex. #definiera OCH &&, #definiera ELLER ||. En makrodefinition kan också inkludera uttryck som #define AREA 4 * 5.56.
Vad är Inline-funktion?
När en funktion anropas tar kompilatorn lite tid att utföra den. Om funktionen inte är så komplex kan programmeraren konvertera funktionen till en inline-funktion. Se nedanstående program.
Figur 02: Funktion utan inline
Print_hello är en enkel funktion. Den skriver ut strängen”Hej” när funktionen anropas. Exekveringstiden för den funktionen är 0.187s. När du använder inline-nyckelordet på följande sätt minskar körningstiden till 0,064s.
Figur 03: Inline-funktion
Därför minskar körningstiden genom att använda det inbyggda nyckelordet. Inline-funktionerna kanske inte fungerar om det finns slingor, växlingsuttalanden och om funktionen innehåller statiska variabler eller rekursiva funktioner.
Vad är skillnaden mellan makro och inline-funktion?
Skilja artikeln mitt före bordet
Makro vs inbyggd funktion |
|
Ett makro är ett kodfragment, vilket är ett förprocessordirektiv som ingår i början av programmet som föregås av ett hash-tecken. | En inline-funktion är en C ++ -förbättringsfunktion för att minimera körningstiden för ett program. |
Utvärderingstid | |
I makro utvärderas argumentet varje gång det används i programmet. | Inline utvärderas argumentet en gång. |
Kontrolleras av | |
Ett makro kontrolleras av förprocessorn. | En inline-funktion kontrolleras av kompilatorn. |
Nyckelord | |
Marco använder #define. | Inline-funktionen använder nyckelordet 'inline'. |
Användande | |
Makro kan användas för att definiera konstanter, uttryck, för bokstavlig textersättning och för att definiera funktioner etc. | En inline-funktion kan användas för att minimera körningstiden för programmet. |
Uppsägning | |
Makro avslutas med den nya raden. | Inline-funktionen avslutas med det lockiga stödet i slutet av inline-funktionen. |
Definierande punkt | |
En Marco definieras i början av programmet. | En inline-funktion kan finnas inom eller utanför klassen. |
Sammanfattning - Makro vs inbyggd funktion
Denna artikel diskuterade skillnaden mellan makro och inline-funktion. Dessa begrepp används i C ++ programmering. Skillnaden mellan makro och inline-funktion är att ett makro kontrolleras av förprocessorn medan en inline-funktion kontrolleras av kompilatorn.
Rekommenderas:
Skillnaden Mellan Analysering Uppifrån Och Ned Och Nedifrån Och Upp
Huvudskillnaden mellan upp och ner-analysering är att uppifrån och ner-analysering utför analysering från den stirrande symbolen till ingångssträngen whi
Skillnaden Mellan Cat5 Och Cat5e Och Cat6 Och Cat7 Kablar
Cat5 vs Cat5e vs Cat6 vs Cat7 Kablar Cat5 och Cat5e och Cat6 och Cat7 är olika standarder för kablar. Om du undrar om dessa namn på som
Skillnaden Mellan Apple IPhone 4 Och IPhone 5 Och Senaste Android-smartphones (2.1 Och 2.2 Och 2.3)
Apple iPhone 4 vs iPhone 5 vs Senaste Android Smartphones (2.1 vs 2.2 vs 2.3) Apple iPhone 4, iPhone 5 och Android Smartphones är konkurrenterna i sm
Skillnaden Mellan Kyckling Och Höna Och Pullet Och Kuk Och Cockerel Och Tupp Och Capon
Chicken vs Hen vs Pullet vs Cock vs Cockerel vs Rooster vs Capon Chicken, hen, pullet, cock, cockerel, rooster and capon, antagligen har ingen annan fågel så man
Skillnaden Mellan Block Och Inline-element
Nyckelskillnad - Blockera mot inbyggda element HTML står för Hyper Text Markup Language. Den används för att skapa webbsidor. Varje webbsida är ansluten till en annan