Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

OO C++ tutorial
http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=17013
Страница 1 от 1

Автор:  HCL [ Чет Яну 30, 2020 7:58 pm ]
Заглавие:  OO C++ tutorial

Налага ми се да разбера и напасна кода на един симулатор, дето като го погледнах и се облещих съвсем. Някакъв водопад от букви цифри и символи дето даже не знаех, че ги има в С-то ::,~,->,.,>& Та ми трябва някъв туториал дето да ме вдине на скорот поне със синтаксиса. За концепта има къде да питам.

Автор:  kalata23 [ Чет Яну 30, 2020 10:03 pm ]
Заглавие:  Re: OO C++ tutorial

Това е С++. За разлика от С, С++ е обектноориентиран език и там нещата са разделени предимно на класове-подкласове и namespaces

Автор:  HCL [ Чет Яну 30, 2020 10:10 pm ]
Заглавие:  Re: OO C++ tutorial

До толкова разбрах, сега ми трябва някакво добро въведение в темата, което да мина за два дена. Може и платено да е.

Автор:  HCL [ Чет Яну 30, 2020 11:24 pm ]
Заглавие:  Re: OO C++ tutorial

Мисля че намерих това което ми трябваше :)

https://www.youtube.com/watch?v=ZOKLjJF ... ex=14&t=0s
https://www.youtube.com/playlist?list=P ... dqGD0S4FFb

Автор:  palavrov [ Пет Яну 31, 2020 12:15 am ]
Заглавие:  Re: OO C++ tutorial

Ако ме питаш мен хич и не си го причинявай това главоболие.
Не съм пипал ++ от доста години и оня ден се изумих, че от 10+ години можело да пропуснеш да напишеш
Код:
this->
компилатора се усещал и си знаел кога какво си имал в предвид. Като добавиш и другите implicit дивоти които си ги има открай време ако не знаеш добре C++ никога не можеш да си сигурен, че това което виждаш ще отговаря на това което ще се компилира т.е. трябва да изчетеш всички .h файлове за да видиш дали няма предефинирани оператори, какво правят базовите класове, какво наследяване има и т.н.

Автор:  miro_atc [ Пет Яну 31, 2020 10:55 am ]
Заглавие:  Re: OO C++ tutorial

Аз пък помня, че едно време имаше чисто С ;-)

Извън майтапа, уливането с изгъзици не е добра идея и това е ясно. Но ++ не го изисква това, всеки сам си решава колко да се улива. Ако решиш може да се улееш добре и без ++.
Въпросът е, че С++ покрива на 100% чистото С и освен това дава някои възможности, които няма как да се постигнат по друг начин. Примерно работа с динамична памет без ++ е жив мазохизъм. За съжаление обаче смесването на двата езика също е главоболие, затова обичайната практика днешно време е да се пише "стил чисто С" но изцяло в ++ среда.

Автор:  HCL [ Пет Яну 31, 2020 11:37 am ]
Заглавие:  Re: OO C++ tutorial

@palavrov, нямам избор в случая. Средата е налична и трябва да работя в нея.

Автор:  palavrov [ Пет Яну 31, 2020 11:51 am ]
Заглавие:  Re: OO C++ tutorial

miro_atc написа:
Аз пък помня, че едно време имаше чисто С ;-)

Извън майтапа, уливането с изгъзици не е добра идея и това е ясно. Но ++ не го изисква това, всеки сам си решава колко да се улива. Ако решиш може да се улееш добре и без ++.
Въпросът е, че С++ покрива на 100% чистото С и освен това дава някои възможности, които няма как да се постигнат по друг начин. Примерно работа с динамична памет без ++ е жив мазохизъм. За съжаление обаче смесването на двата езика също е главоболие, затова обичайната практика днешно време е да се пише "стил чисто С" но изцяло в ++ среда.

Миро, да ме прощаваш, че ти опонирам ама и обратното е вярно т.е. пише се OO на чисто C - за справка linux kernel.

Едно време (94-95) ми попадна едно книжле - Object Oriented Assembly Language - което ми промени изцяло отношението към OO - цялата книга се синтезира в едно изречение - OO е naming convention a OO езици са syntax sugar т.е. позволяват ти да пишеш по малко и съответно по неясен на пръв поглед код но в никакъв случай нещо пречи да ползваш и най простия език за OO - достатъчно е да кръщаваш процедури/функции съществилно_глагол, наследяването става с влагане на структура в структура и т.н.

Автор:  miro_atc [ Пет Яну 31, 2020 12:44 pm ]
Заглавие:  Re: OO C++ tutorial

palavrov написа:
Миро, да ме прощаваш, че ти опонирам ама и обратното е вярно т.е. пише се OO на чисто C - за справка linux kernel.


Изборът на даден инструмент винаги е следствие от много и различни съображения. Но ако се съсредоточим само върху самия инструмент, т.е. компилатора и езика, то очевидно С++ покрива на 100% стандартното С. Предполагам знаеш, че в гну-то на gcc трябва изрично да му кажеш дали да се ограничава до даден стандарт. Иначе си се оправя само автоматично. Аз лично директно викам g++ винаги, без значение дали сорса ми съдържа ++ или не. С други думи аз ползвам само ++ като инструменти и мога да си го позволява поради простата причина, че *никога* не ползвам чист С компилатор. И не си и помислям да ползвам такъв инструмент, защото това ще ми доведе само до главоболия от сорта на декорации и тем подомни. И нула, подчертава *нула* ползи.
Така че има 3 варианта:
1. Само Ц++ инструменти
2. Само Ц инструменти
3. Смесено
За съжаление последният вариант е доста проблематичен. Не че някои не го ползват при наличие на "други" съображения. Вторият вариант очевидно не ти позволява Ц++ код, което за мен си е все едно да те накарат да ходиш само на един крак. Отново ясно е, че някои имат и такива съображения, но аз не съм еднокрак.
Единствено първият вариант ти дава всички възможности. Като искаш пиши си чисто Ц. Нямаш ядове. Не е казано, че трябва да ползваш ++, просто може да го направиш (ако ти поискаш).

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/