[so] [General] Coding Style și Funcții Statice

Călin Cruceru crucerucalincristian at gmail.com
Thu Mar 31 22:43:31 EEST 2016


Salutare,

2016-03-31 22:17 GMT+03:00 Razvan Deaconescu via so <so at cursuri.cs.pub.ro>:
> Dorinel Filip via so <so at cursuri.cs.pub.ro> writes:
>> Salutare,
>>
>> De multe ori, în C, pentru a evita declarațiile implicite, trebuie să
>> punem, semnăturile funcțiilor statice la începutul sursei modulului
>> (exact cum am face într-un fișier header, pentru funcțiile
>> non-statice).
>
> Nu înțeleg "evitarea declarațiilor implicite". Despre ce este vorba?
>

Cred că Dorinel se referă la feature-ul obscur al C-ului cu fix acel
nume - Implicit Function Declaration.

> Dacă pui într-un modul funcțiile în ordine, nu ar trebui să ai problema
> asta.
>

Nu și dacă ai mutual recursion, probabil.

>> Este această abordare una greșită? Ar fi o practică mai sănătoasă să
>> folosim un fișier .h, pe care să nu-l precizăm ca necesar la folosirea
>> modulului?
>>

Cred că înțeleg ce întrebi.  IMHO e OK să le declari, nu văd nimic
"urât" în asta.

Ai putea într-adevăr să nu faci headerul respectiv privat (deci să nu
îl pui în include/, unde se pun de obicei headerele pe care le
exporți), dar nu cred că e necesar.  Pe lângă asta, pe lângă abordarea
puțin diferită asupra încapsulării, cele 2 abordări mai diferă și prin
linkage și poate nu vrei ca oricine să poată linka la funcția ta.

Călin


More information about the so mailing list