Linux-Bulgaria.ORG
навигация

 

начало

пощенски списък

архив на групата

семинари ...

документи

как да ...

 

 

Предишно писмо Следващо писмо Предишно по тема Следващо по тема По Дата По тема (thread)

Re: lug-bg: PREVOD


  • Subject: Re: lug-bg: PREVOD
  • From: Andrey Andreev <andreev@xxxxxxxxxxxxxx>
  • Date: Tue, 12 Oct 2004 03:39:08 +0300

Peter Pentchev wrote:
On Sat, Oct 09, 2004 at 01:19:58AM +0300, Vasil Kolev wrote:

На сб, 2004-10-09 в 00:09, George Danchev записа:

On Saturday 09 October 2004 00:38, dpp wrote:
[snip]
и е много по-правилно да се каже, че са файлове с декларации или нещо
подобно, само дето термина е останал (изглежда) от дните, когато първо
трябва да си дефинирап _най-огторе_ прототипа, и после да си дефинираш
отделно функцията (Паскала правеше така с unit-ите, имаше Interface и
после Implementation).


Ммм.. то това и сега си е така - не толкова за дефиницията, колкото за
мноооого по-честия случай на *използване* на функцията.  За компилатора
е много по-лесно (а в много проекти дори стандартите за писане на код го
изискват) да е видял прототип на функцията, преди да си я използвал,
така че да може веднага да прецени 1. дали си дал правилен брой
параметри, 2. дали трябва да прави някакви конверсии (sign extending и
т.н.) с параметрите, които си дал, и 3. дали изобщо *може* да направи
конверсиите, или му подаваш ябълка на мястото на портокал.  Заглавните
файлове се използват мнооооого по-рядко като пролог за *дефиниране* на
функция, отколкото като пролог за *използването* й - както и точно в
този случай, когато става дума за превод на текст, изваден от info pages
на стандартната библиотека на C - такъв текст най-вероятно ще го чете
човек, който ще използва библиотеката, а не такъв, който ще я дописва :)

Така че дори и за функции е важно заглавните файлове да са в самото
начало на програмата (след като предпроцесорът я обработи); а май няма
нужда изобщо да споменавам дефинираните в тях константи или типове :)


Още по правилно щеше да е, ако се казваха интерфейсни файлове (защото
практически за това се ползват), ама какво да се прави, тежко
наследство ...


Мдам, интерфейсен файл наистина би било малко по-точно, но няма да
отговаря много на философията на езика (в случая имам предвид C :)

Да, но особено ако погледнем и С++, то често .h файловете съдържат доста повече от декларации и интерфейси. Само погледнете как/къде е писан STL примерно.

Лека,

Андро
============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================



 

наши приятели

 

линукс за българи
http://linux-bg.org

FSA-BG
http://fsa-bg.org

OpenFest
http://openfest.org

FreeBSD BG
http://bg-freebsd.org

KDE-BG
http://kde.fsa-bg.org/

Gnome-BG
http://gnome.cult.bg/

проект OpenFMI
http://openfmi.net

NetField Forum
http://netField.ludost.net/forum/

 

 

Linux-Bulgaria.ORG

Mailing list messages are © Copyright their authors.