Article View: pl.comp.lang.c
Article #297888Statyczne zmienne globalne: niefortunne określenie?
From: slawek
Date: Thu, 11 Aug 2011 18:55
Date: Thu, 11 Aug 2011 18:55
32 lines
2256 bytes
2256 bytes
Mamy taki sobie plik sample.c
static int foo = 1;
extern int bar;
int main(void)
{
buz(foo,bar);
return 0;
}
Oczywiście zmienna foo jest statyczną zmienną globalną.
Ups... czy to dobra nazwa? Zmienna globalna to zmienna tak dostępna jak kula
ziemska długa i szeroka.
A poczciwa foo jest dostępna jedynie w danej jednostce kompilacji, w
praktyce to będzie plik sample.c . Czyli zdecydowanie mniej globalna niż np.
bar, która naprawdę jest (przynajmniej potencjalnie) dostępna wszędzie w
całym programie. (Statyczne funkcje i zmienne globalne z jednego pliku C
'robią za' składowe prywatne klasy C++, jeżeli nie martwi nas
dziedziczenie/polimorfizm jest całkiem dobrze.)
Czy jest jakaś bardziej poręczna nazwa niż, używana przez podręczniki,
"zmienna globalna"? Czy nie lepiej mówić (inne podręczniki) o "zmiennej
zewnętrznej"? Zwłaszcza, że zmienne globalne mogą (w jakimś kontekście i
jakimś języku) rzeczywiście być globalne - tj. np. jedna zmienna trzymająca
wartość globalnie dla całego I-netu, jakiś GMT czy NYSE.
Problem jest terminologiczny, ot tak na lato i dla pomarudzenia.
slawek
Technical Details
Message-ID:
<4e44258a$0$2497$65785112@news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.uni-stuttgart.de!news.stw-bonn.de!newsreader4.netcologne.de!news.netcologne.de!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.uni-stuttgart.de!news.stw-bonn.de!newsreader4.netcologne.de!news.netcologne.de!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail From: "slawek" <human@site.pl> Newsgroups: pl.comp.lang.c Subject: Statyczne zmienne globalne: niefortunne określenie? Date: Thu, 11 Aug 2011 20:55:04 +0200 MIME-Version: 1.0 X-Priority: 3 X-MSMail-Priority: Normal Importance: Normal X-Newsreader: Microsoft Windows Live Mail 15.4.3538.513 X-MimeOLE: Produced By Microsoft MimeOLE V15.4.3538.513 Lines: 33 Message-ID: <4e44258a$0$2497$65785112@news.neostrada.pl> Organization: Telekomunikacja Polska NNTP-Posting-Host: 62.69.202.124 X-Trace: 1313088906 unt-rea-a-02.news.neostrada.pl 2497 62.69.202.124:63299 X-Complaints-To: abuse@news.neostrada.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit