Овај чланак говори о раду Ц++ датотека заглавља.
Како функционише датотека заглавља
А заглавље датотека је важна датотека која генерално садржи декларацију функција и променљивих. Без коришћења датотеке заглавља , нећете моћи да покренете Ц++ код.
Типови датотека заглавља у Ц++
Имамо 2 врсте датотеке заглавља у Ц++.
Стандардне датотеке заглавља
А стандардно заглавље датотека укључује библиотеке које су део Ц++ ИСО стандарда и које су унапред инсталиране у компајлеру. Примери таквих стандардне датотеке заглавља су иостреам , фстреам , вектор , и још.
Нестандардне датотеке заглавља
Нестандардне датотеке заглавља нису укључени у Ц++ ИСО стандард; међутим, програмер дефинише ове датотеке заглавља за неку специфичну сврху. Иако су неке од ових датотека заглавља укључене у компајлере, али у већини случајева корисник их мора ручно инсталирати. Примери таквих нестандардне датотеке заглавља укључити битс/стдц++.х и рапидјсон/доцумент.х.
Синтакса за коришћење датотеке заглавља у Ц++
У Ц++, датотеке заглавља су декларисани коришћењем следеће синтаксе:
#инцлуде<хеадер_филе>У горњој синтакси, корисник мора да замени „ хеадер_филе ” име са заглављем које желе да декларишу унутар Ц++ програма.
Као, иостреам заглавље мора бити укључено у Ц++ програм јер без њега нећете моћи да користите цоут() или стд::цоут функција за штампање вредности на екрану конзоле.
Размотрите следећи Ц++ програм који користи иостреам датотека заглавља.
#инцлуде <иостреам>инт главни ( )
{
стд :: цоут << 'Здраво линукхинт' ;
повратак 0 ;
}
Тхе иостреам датотека заглавља у Ц++ ће омогућити корисницима да користе стд::цоут функцију и усмерава компајлер да пошаље поруку на конзолу. Међутим, зато што овај програм никада није дефинисан или декларисан стд::цоут , како компајлер зна шта је то?
Горњи упит се може адресирати као, у иостреам датотека заглавља, стд::цоут већ је био унапред проглашен. Када користимо #инцлуде <иостреам> , тражимо од препроцесора да копира сваки ред садржаја из датотеке под називом „ иостреам ” у датотеку која се налази #инцлудед .
Ако није било иостреам заглавље, морали бисте ручно да напишете или копирате сваку од декларација на које се односи стд::цоут у врх сваке датотеке која се користи стд::цоут . Ово би било пуно посла и захтевало би много разумевања о томе како стд::цоут је проглашен. Ако бисмо додали или променили прототип функције, морали бисмо ручно да ажурирамо сваку од унапред декларација. Много је једноставније једноставно додати #инцлуде <иостреам> у вашем Ц++ коду.
Закључак
Тхе датотека заглавља је потребан јер Ц++ компајлер не може сам да тражи декларације симбола, тако да му морате помоћи укључивањем свих тих декларација. У овом чланку смо разговарали о раду, синтакси и важности датотеке заглавља у Ц++ са примером у детаље.