• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Deklarowanie elementu kilkukrotnie

Object Storage Arubacloud
0 głosów
205 wizyt
pytanie zadane 23 maja 2020 w C i C++ przez Sevence Początkujący (280 p.)
zamknięte 23 maja 2020 przez Sevence
Cześć, rozpocząłem programowanie w c++ i mam pewne pytanie dotyczące deklaracji.

Wyczytałem, że można zadeklarować ten sam element kilkukrotnie i moje pytanie brzmi: w jakim celu?

Chciałbym poprosić o wytłumaczenie na jakimś przykładzie dla newbie, będę wdzięczny.
komentarz zamknięcia: otrzymałem odpowiedź
komentarz 23 maja 2020 przez j23 Mędrzec (194,920 p.)

Jaki element? Chodzi Ci o deklarację zmiennej z extern?

komentarz 23 maja 2020 przez Sevence Początkujący (280 p.)
Tak

1 odpowiedź

+1 głos
odpowiedź 23 maja 2020 przez j23 Mędrzec (194,920 p.)
wybrane 23 maja 2020 przez Sevence
 
Najlepsza

Deklaracje z extern stosujesz wszędzie tam, gdzie chcesz, by zmienna globalna zdefiniowana w innym pliku źródłowym była widoczna. Czyli jak w pliku A.cpp masz definicję:

int globalVariable;

to by była widoczna w pliku B.cpp, musisz dać jej deklarację:

extern int globalVariable;

Taką deklarację możesz stosować wielokrotnie w różnych plikach źródłowych.

komentarz 23 maja 2020 przez Sevence Początkujący (280 p.)
Dziękuję za wyjaśnienie, źle to zrozumiałem. Myślałem że można zrobić deklarację kilkukrotną w obrębie jednego pliku i tak się zastanawiałem po co? Jeśli chodzi o deklarację  tylko w różnych plikach to wszystko jasne.
komentarz 23 maja 2020 przez Sevence Początkujący (280 p.)
Nie chcę pisać kolejnego wątku, ale mam jeszcze jedno pytanie.

Wyczytałem też że definicja jest jednocześnie deklaracją. To oznacza że mogę napisać samą definicję i nie muszę pisać dodatkowo deklaracji?
1
komentarz 23 maja 2020 przez j23 Mędrzec (194,920 p.)
Tak. Definicja mówi kompilatorowi, żeby stworzył zmienną o danej nazwie i typie.  Deklaracja z kolei mówi, że gdzieś jest już zdefiniowana zmienna i że kod ma się do niej odwoływać. W obu przypadkach do przestrzeni nazw wprowadzana jest nowa nazwa (zmiennej), dlatego mówi się, że definicja jest także deklaracją.
komentarz 23 maja 2020 przez Sevence Początkujący (280 p.)

@j23, To w takim razię po co deklarować, skoro mogę zdefiniować i będzie jednocześnie zadeklarowana.

1
komentarz 23 maja 2020 przez j23 Mędrzec (194,920 p.)
Tak jak pisałem: oddzielną deklaracje stosujesz jedynie wtedy, gdy chcesz, by zmienna (globalna) była widoczna w innej jednostce kompilacji. I tyle.

Podobne pytania

0 głosów
1 odpowiedź 204 wizyt
pytanie zadane 16 stycznia 2023 w C i C++ przez polandonion Mądrala (7,040 p.)
0 głosów
1 odpowiedź 189 wizyt
pytanie zadane 13 kwietnia 2022 w C i C++ przez Szanti 2.0 Nowicjusz (150 p.)
0 głosów
1 odpowiedź 303 wizyt
pytanie zadane 25 stycznia 2021 w C i C++ przez KonradKalbarczyk Nowicjusz (240 p.)

92,584 zapytań

141,434 odpowiedzi

319,671 komentarzy

61,968 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...