[ brainiac @ 14.08.2007. 13:44 ] @
Sta znaci sledece: npr. #include "../nekiHeader" da li ovakav poziv zaglavlja ima neku posebnu namenu (definisano je i kao svako drugo zaglavlje) i kada to treba primenjivati? |
[ brainiac @ 14.08.2007. 13:44 ] @
[ perun_ @ 14.08.2007. 14:54 ] @
Ukoliko stoji :
Code: #include "../nekiHeader" To znaci da ukljucujes zagavlje na odredjenoj putanji. Ako stoji samo : Code: #include "nekiHeader.h" to znaci da ukljucujes neki header koji se nalazi u "tvom" folderu, tj. istom folderu gde je i izvrsni file.U ovim slucajevima radi se gotovo sigurno o tvojim headerima, odnosno onima koje si ti napisao ili nasao gotove i ukljucio u projekat. Ako stoji : Code: #include <nekiHeader.h> Tada se header trazi u folderu include i skoro uvek je u pitanju sistemski header, ali ti svakako mozes header koji cesto koristis iskopirati u pomenuti folder i tako ga pozivati. Sistemski su recimo iostream.h, math.h, ili nesto slicno.. Nadam se da sam makar malo pomogao, mada ne znam koliko sam shvatio pitanje. Ako sam "omanuo" itaj preciznije. [ Exit @ 14.08.2007. 17:02 ] @
Samo bi jos dodao da obratis paznju na jednu cestu gresku.
Kada ukljucujes standardni header u C++ kucas npr. Code: #include <iostream> a ne Code: kao u C#include <iostream.h> [ perun_ @ 15.08.2007. 02:16 ] @
U pravu si, ali visual studio "trpi" i <iostream.h> provereno...Svakako treba praktikovati samo <iostream>
[ brainiac @ 15.08.2007. 06:21 ] @
Hvala. Sada kapiram gde sam se sapletao.
Mislio sam da ima neko posebno znacenje sa ovim ../ a ustvari samo folder unazad :) pozdrav [ X Files @ 15.08.2007. 06:23 ] @
Citat: #include "../nekiHeader" da li ovakav poziv zaglavlja ima neku posebnu namenu (definisano je i kao svako drugo zaglavlje) i kada to treba primenjivati? U praksi, c++ kod nekog projekta nije samo u jednom istom folderu, nego se prodeže kroz subfoldere, a ponekad se deo nekog zajedničkog dela koda nalazi i na sasvim drugoj lokaciji (čak i disku, mreži). Ponekad se kompajler 'buni' jer header fajl koji mu je 'podmetnut', npr: #include "MBox.h" ... ne bude 'pronađen', pa je potrebno tačnije 'gađati' putanju, npr: #include "..\..\_Shared\Code\MsgDlg\MBox.h" (ako se sećam, ovo su dva foldera unazad, pa onda ulazak u folder _shared, itd...) E sad, postoje načini kako ovo izbeći. Na primer, okruženja imaju podešavanja "Include path" pa je bolje tamo podesiti početne putanje, a u kodu koristiti samo 'proste' putanje, jer tada se fajl može kopirati bilo gde bez potrebe za njegovim naknadnim menjanjem u kontekstu novog projekta. Dalje, kako glavni projektni fajl ima putanje projektnih fajlova, ponekad nije potrebno posebno gađati lokaciju headera iako su smešteni po sub/folderim, jer se vuku iz njega. O ovome verovatno Dragi Tata može dati više korisnih detalja. Inače, meni se sviđa kako je .NET sa namespaces rešio sve ove probleme oko referenciranja. Copyright (C) 2001-2024 by www.elitesecurity.org. All rights reserved.
|