[ Ekskalibur @ 28.12.2010. 18:36 ] @
Da li je moguce i kako u Microsoft Visual Studio 6.0 promeniti nazive funkcija na vise mesta od jednom u celom projektu?
Na primer imam funkciju Naziv() koja se nalazi na puno mesta u projektu i sad zelim da je nazovem Naziv2()...
Da li postoji nacin da se svud, u celom projektu, zameni Naziv() sa Naziv2() bez da jurim po kodu po celom projektu i menjam naziv funkcije korak po korak?
Ako neko zna, molim vas, pomozite mi!
Hvala. Pozdrav.
[ Ekskalibur @ 28.12.2010. 22:39 ] @
Ako je to nemoguce, onda mi bar dajte neki predlog kako bih to mogao sto lakse da odradim...
Takodje me interesuje da li je moguce menjati nazive fajlova koji su sastavni delovi projekta?
Na primer, zelim naziv.cpp, naziv.aps, naziv.clw, naziv.dsp, naziv.dsw, naziv.ncb... da preimenujem u naziv2.cpp, naziv2.aps, naziv2.clw, naziv2.dsp, naziv2.dsw, naziv2.ncb...
Pokusao sam rucno, korak po korak, da to odradim, ali mi je izbacivalo puno gresaka, jer ne znam gde su sve linkovani ti fajlovi i na kojim mestima...
Da li neko zna, kako bih to mogao valjano da uradim?
Hvala.
[ glorius @ 29.12.2010. 09:15 ] @
Ne preporucujem prosto rename-ovanje imena fajlova koji nisu .h ili .cpp. Ako bas moras da preimenujes project fajlove preporucujem da napravis nov projekat i nazoves ga 'naziv2' koji ce ti generisati naziv2.dsp, naziv2.dsw. I onda dodas .h i .cpp fajlove u nov projekat.

Rename .cpp fajlova je bezbolno sto ne vazi i za .h fajlove posto ces dobiti greske u fajlovima koji ih include-uju tako da ces morati pazljivo da vrsis izmene.

I na kraju, rename funkcija... Iskreno, nikada nisam imao potrebe za tim ( osim u stadijumu dok jos nisam iskoristio funkciju na mnogim mestima, u slucaju da sam je vec iskoristio na mnogim mestima nije mi ni padalo na pamet da je rename-ujem :) ).
Nema elegantnog resenja. Jedan od nacina je da izvrsis rename funkcije, build-ujes projekat i svuda gde ti pojavljuje greske da ne moze da nadje funkciju naziv1 rename-ujes je u naziv2.
Postoji i drugi nacin. Izvrsis replace iz naziv1 u naziv2 na nivou celog projekta ( u VS 2008. to je opcija Edit->Find and Replace->Replace in Files i izaberes Entire Solution ) ali ja bih ti preporucio prvi nacin posto sa replace mozes imati problema... Npr. ako ti se funkcija zove move() i rename-ujes je sa stop() a negde u kodu imas neku promenljivu ili string imoveable onda ce on i u tom stringu zameniti podstring move sa stop i dobices istopable...


[ X Files @ 29.12.2010. 09:20 ] @
Modernija razvojna okruzenja imaju nesto sto se zove Refactoring:
http://en.wikipedia.org/wiki/Code_refactoring

Pretragom po kljucnim recima verovatno ces naci to sto ti treba ili kao nezavisan program ili kao plugin za tvoje okruzenje ili da prebacis u okruzenje koje to vec ima ugradjeno.

Refactoring te oslobadja problema koje potencijalno mozes imati sa prostim Search/Replace-om, jer vodi racuna i o semantici.
[ Mihajlo Cvetanović @ 29.12.2010. 09:30 ] @
U 6.0 nije moguće preimenovanje funkcija po celom kodu, mislim da je to tek od VS2005 ubačeno u IntelliSense, možda tek od VS2008. Ali zato je tu Visual Assist firme Whole Tomato, dodatak za Visual Studio (za sve verzije), koji se dodatno i plaća.

Preimenovanje fajlova uradi preko Solution Explorera (jedan od prozora u Visual Studiu). Na taj način se preimenuje i ime fajla u projektu i fajl na hard disku. Na žalost ne sećam se više da li je uopšte moguće preimenovanje iz 6.0. Ako nije moguće onda izbaci fajlove iz projekta, preimenuj ih na hard disku, pa ubaci "nove" fajlove u projekat. Za preimenovanje samog projekta je ista procedura samo na višem nivou. Obriši projekat iz dsw, preimenuj projekat, ubaci "novi" projekat u dsw. Pre bildovanja zatvori dsw, i ručno obriši sve fajlove iz Debug i Release foldera, kao i .ncb, .aps, i .opt fajlove.
[ Ekskalibur @ 01.01.2011. 11:49 ] @
Hvala vam puno! :)