Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 113 114 [115] 116 117 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#1711
,
|
|
|
|
ссылочный
Добавлено Цитата trainer @ Какую функцию выполняет символ ';' ? ![]() Учитывая что: Цитата On the simplest level, a program is a sequence of tokens delimited by separators. A token is the smallest meaningful unit of text in a program. A separator is either a blank or a comment. а в чем проблема?? |
|
Сообщ.
#1712
,
|
|
|
|
Цитата DesweR @ Цитата MyNameIsIgor @ Только плюсы то способны сделать лямбды библиотекой, пусть и ограниченной, а дельфи может только слюни пускать Ололо! В Delphi реализуется через анонимные методы (но тоже ограниченно). Я думаю, что имелось в виду нечто вроде boost::lambda. Правда когда я вижу такой код, то начинаю разделять мнение Линуса о С++... |
|
Сообщ.
#1713
,
|
|
|
|
Гмм...? Цитата D_KEY @ Я думаю, что имелось в виду нечто вроде boost::lambda Там, как бы, за всей этой красотой стоят макросы... Добавлено А в C++ можно так? ![]() ![]() begin Proc1; Proc2; Proc3 {!} end; |
|
Сообщ.
#1714
,
|
|
|
|
Цитата DesweR @ Там, как бы, за всей этой красотой стоят макросы... Как бэ нет. Цитата D_KEY @ Я думаю, что имелось в виду нечто вроде boost::lambda. Оно. Цитата D_KEY @ Правда когда я вижу такой код, то начинаю разделять мнение Линуса о С++... А я вот почему то о программисте Ну, в самом деле, в данном случае функтор был бы понятнее, что не является минусом boost.lambda. Добавлено Цитата DesweR @ А в C++ можно так? А словами? |
|
Сообщ.
#1715
,
|
|
|
|
Цитата MyNameIsIgor @ Цитата D_KEY @ Правда когда я вижу такой код, то начинаю разделять мнение Линуса о С++... А я вот почему то о программисте ![]() Это ты о чем? Цитата Цитата DesweR @ А в C++ можно так? А словами? Можно не ставить ; т.к. в pascal'ях и некоторых дургих языках ; является разделителем инструкций, а не знаком завершения инструкции. |
|
Сообщ.
#1716
,
|
|
|
|
Цитата DesweR @ Можно А в C++ можно так? ![]() ![]() ![]() #define Proc3() Proc4(); |
|
Сообщ.
#1717
,
|
|
|
|
Цитата D_KEY @ Это ты о чем? Просто отношу линусовое bullshit в адрес программиста. |
|
Сообщ.
#1718
,
|
|
|
|
Цитата D_KEY @ Не можно, а ЕМНИП нужно. Можно не ставить ; |
|
Сообщ.
#1719
,
|
|
|
|
Цитата MyNameIsIgor @ Цитата D_KEY @ Это ты о чем? Просто отношу линусовое bullshit в адрес программиста. Проблема в том, что на том же С написать адский код, в духе С++, вроде того, что иногда встречается в boost'е, достаточно сложно, да и никому в голову не придет. А на С++ это чуть ли не норма. В общем, ИМХО, но репутация у С++, отчасти, заслуженная. Добавлено Цитата trainer @ Цитата D_KEY @ Не можно, а ЕМНИП нужно.Можно не ставить ; Мне казалось, что нужно это было только в совсем древних версиях паскаля, а в более-менее приличных языках лишнюю ; можно поставить всегда. |
|
Сообщ.
#1720
,
|
|
|
|
Цитата MyNameIsIgor @ По моему коду видно, что не очень. Но-таки да. Лямбды потому в конечном итоге и ввели в язык, что библиотечная их реализация не справляется с той же эффективностью. Ну, в самом деле, в данном случае функтор был бы понятнее, что не является минусом boost.lambda. Добавлено Это ещё что. Я как-то для прикола вот что выродил. |
|
Сообщ.
#1721
,
|
|
|
|
С этим "можно не ставить, нужно ставить, нельзя ставить" в Паскале (и в Delphi тоже) проблем на самом деле больше, чем преимуществ.
![]() ![]() begin if b then expr1; { Здесь нужно ставить ; } if b then expr1 { Здесь нельзя ставить ; } else expr2; { А здесь можно ставить или не ставить } end |
|
Сообщ.
#1722
,
|
|
|
|
amk
ну а в чем проблема то?? все логично, вот наколенная грамматика IfStmt = 'if' boolExpr then Stmt [ 'else' Stmt] ComplexStmt = 'begin' StmtList [';'] 'end' StmtList = Stmt [';' StmtList] Stmt = IfStmt | ComplextStmt (в кавычках - литералы, в квадратных скобках - необязательные элементы, | - разделитель для списка возможных значений ) |
|
Сообщ.
#1723
,
|
|
|
|
Цитата jack128 @ amk ну а в чем проблема то?? все логично, вот наколенная грамматика С грамматикой-то все понятно. Проблема в том, что приходится задумываться(ведь попадалось мне когда-то исследование, с двумя группами программистов и временем решения, правда там нельзя было ставить лишних ; ), ставить-не ставить. А этот вопрос вообще-то настолько мелочен, что не хотелось бы, чтобы он мешал работе. |
|
Сообщ.
#1724
,
|
|
|
|
Цитата D_KEY @ Проблема в том, что на том же С написать адский код, в духе С++, вроде того, что иногда встречается в boost'е, достаточно сложно, да и никому в голову не придет. А на С++ это чуть ли не норма. Да брось! В C нормой считается соорудить ООП на коленке с кучей макрохаков и не менее вырвиглазными конструкциями. Я вообще прихожу к мнению, что всё самое плохое в плюсах из C. Цитата Qraizer @ Это ещё что. Я как-то для прикола вот что выродил. Нормально |
|
Сообщ.
#1725
,
|
|
|
|
Цитата D_KEY @ С грамматикой-то все понятно. Проблема в том, что приходится задумываться(ведь попадалось мне когда-то исследование, с двумя группами программистов и временем решения, правда там нельзя было ставить лишних ; ), ставить-не ставить. А этот вопрос вообще-то настолько мелочен, что не хотелось бы, чтобы он мешал работе. Мда, мешает очень ![]() ![]() //вот так можно struct Struct1 { }; void Func1() { } //а так нет struct Struct2 { } void Func2() { }; |