Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
C++ builder споделяне на променливи http://mcu-bg.com/mcu_site/viewtopic.php?f=16&t=15243 |
Страница 2 от 3 |
Автор: | valioman [ Вто Май 09, 2017 9:42 pm ] |
Заглавие: | Re: C++ builder споделяне на променливи |
В трети cpp файл (клас,обект) ... на борланд съм пипал само делфито преди години но и там нещата са същите .. просто трябва обекта да е деклариран като публичен да речем в main() процедурата която ти стартира Form1 . |
Автор: | Цецо [ Сря Май 10, 2017 7:54 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Вземи една книжка за С и почети малко. Ако искаш да станеш програмист де, не просто поредния драскач, който пише софтуер на принципа проба-грешка. Стига си пробвал да местиш от единия фаил в другия, без да разбираш какво точно правиш. В крайна сметка ще вземе да тръгне и ще се хвалиш после, че си написал програма... |
Автор: | itso.t [ Сря Май 10, 2017 9:21 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Тая работа само с четене не става. Трябва и някой, който да мета по някой жокер от време на време. Например, в прословутия учебник на Кърнингам - Ричи има неща които са обяснени доста мъгляво. Тоест, трябва да се"досещаш" каво са имали предвид авторите, което е тъпо... |
Автор: | bateAz [ Сря Май 10, 2017 9:26 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Казусът, който е повдигнат в темата, е извън скопа на ANSII C. Чисто C++ си е - класове. |
Автор: | Цецо [ Сря Май 10, 2017 9:36 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Винаги препоръчвам това: Програмиране III (C и C++), Момчев, Чакъров, 1996. Издателство на ТУ-София. Много разбрано написано, с добри примери и на български. За съжаление почти ненамираемо. Но едва ли човек дето рограмира като "цъка формички" би се загледал в подобна "скучна" литература. Вътре в книжката прозорци и контроли няма, само "сух конзолен изход". |
Автор: | miro_atc [ Сря Май 10, 2017 9:39 am ] | |||||||||
Заглавие: | Re: C++ builder споделяне на променливи | |||||||||
Бе баш си е чисто С... ти ако не знаеш какво е хедър и инклудваш един сорс файл в друг малко ти е рано да боравиш с класове |
Автор: | Цецо [ Сря Май 10, 2017 9:43 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Между другото в повечето учебници по Ц/Ц++, много малко се набляга на структурирането на файловете - хедъри, сорсове, предпроцесор, както и самия процес на компилиране и линкване. Което си е цяла една дисциплина за един семестър. В ТУ например въобще не се преподаваха такива неща. А гледам, че студенти завършили програмиране "на запад" си имат доста добри познания в тая област, демек учили са ги принудително. |
Автор: | slav4o.com [ Пет Май 12, 2017 10:19 pm ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Ами прочетох някои неща. Цялата работа се оказа, че е щяла да стане със extern, но онзи ден не стана с тази ключова дума. Може би защото бях инклуднал *.cpp Никакви класове не съм писал. |
Автор: | ToHu [ Съб Май 13, 2017 4:15 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Абе extern става ама по принцип не е добра идея. То и аз така пиша но на мен ми се случва 1 на 5 години и то да тествам нещо, но не е ок за РС, за контролер особенно малък глобалните променливи нямат много алтернативи, налага се да ги имаш, но за РС не е точно така. |
Автор: | slav4o.com [ Съб Май 13, 2017 11:45 pm ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Ами аз от това което разбрах: Това което е в хедъра се "копира" там където е инклуднато. Правиш си файл globals.cpp със функции и променливи. Дефинираш ги вътре. Отвън в хедъра globals.h ги декларираш само с extern. И навсякъде инклудваш globals.h . Иначе може във всяко cpp да ги декларираш променливите с extern ама е играчка. Мисля, че доста културно ми се получи и какамангата се оправи. Другия вариант като част от обект, не ми харесва, защото се пише после повече име на обект ->променлива. Първобитния вариант със викане на функция която да я променя е голяма гимнастика. |
Автор: | ToHu [ Нед Май 14, 2017 2:56 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Ами ако използваш обектно ориентиран език е добре да пишеш обектно ориентиран код. Да може изцяло с глобални, лично за мен е най-лесно но май не е най-добрият или правилен начин, все пак не пишеш за пик16, както и обратното де. Ама аз не съм писач, да кажат тия дето са истински програмисти, аз драскам по нешо чат пат като ми притрябва. |
Автор: | Predator_MF [ Съб Юни 24, 2017 12:02 pm ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Нищо му няма на extern, обикновено се прави когато нещо е дефинирано някъде в .c/cpp. В такъв случай linker обикновено се грижи открие къде. |
Автор: | slav4o.com [ Нед Юни 25, 2017 10:33 pm ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Да забелязах че компилатора прави обектни файлове от .cpp-тата а линкера ги събира във .exe или .hex ( в зависимост дали сме на C++ builder или MPLAB). Ако променливата е декларирана с extern а не е дефинирана в съответния сорс (.cpp) линкера дава грешка че не може да намер такъв обект. |
Автор: | syscop [ Пон Юни 26, 2017 5:48 am ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Нормално. extern type var казва на компилатора, че има такава променлива. type var му казва да задели памет за нея, т.е. да я създаде. Когато линкера "събира" всичко необходимо, ако е пропуснато второто логично е да вдигне "аларма", че нещо му липсва . |
Автор: | RM [ Пет Окт 06, 2017 8:29 pm ] |
Заглавие: | Re: C++ builder споделяне на променливи |
Е стана ли. |
Страница 2 от 3 | Часовете са според зоната UTC + 1 час [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |