У чым розніца паміж загалоўкам і бібліятэкай?


адказ 1:

Пачну з функцыі, функцыя можа мець прататып і павінна мець вызначэнне. Цела функцыі альбо логіка функцыі функцыі запісваецца ў азначэнні, а ў выпадку прататыпа функцыі паказваецца толькі подпіс функцыі (г.зн. тып вяртання функцыі, імя функцыі і тып параметра).

У выпадку з бібліятэкай: У цэлым азначэнні функцый пішуцца і звычайна складаюцца коды. Магчыма, у нас няма зыходнага кода бібліятэкі. Звычайна існуе два тыпы бібліятэк: C статычная і дынамічная. Статычныя бібліятэкі маюць пашырэнне * .lib, а дынамічныя бібліятэкі - пашырэнне * .dll. У чым розніца дзвюх бібліятэк - гэта іншая гісторыя яшчэ на адзін дзень.

Для загалоўкаў: як правіла, у іх запісваюцца прататыпы функцый і звязанае з імі дэклараванне зменнай. Калі бібліятэка выкарыстоўваецца ў кодзе C і функцыя бібліятэкі выклікаецца без абвяшчэння прататыпа функцыі, кампіляцыя кода верне памылку. Кожная бібліятэка пастаўляецца з загалоўкам, у якім пералічаны ўсе даступныя прататыпы функцый. У загалоўках звычайна ёсць пашырэнне файла * .h.

Яшчэ адно важнае адрозненне заключаецца ў тым, што файлы загалоўкаў уключаны ў праект на этапе папярэдняй апрацоўкі зборкі, а бібліятэкі звязаны ў фазе звязвання працэсу зборкі.