Delphi vs C++
, Часть 1
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.217.58] |
|
|
Правила раздела:
| Страницы: (117) « Первая ... 16 17 [18] 19 20 ... 116 117 ( Перейти к последнему сообщению ) |
Delphi vs C++
, Часть 1
|
Сообщ.
#256
,
|
|
|
|
Цитата Hryak @ Я не путаюсь, потому что with не использую и проблем не возникает. Зачем писать комментарий к коду, если и так всё понятно? Ну, так не используй, никто ведь не заставляет. Но говорить, что with плох на основании того, что ты с ним путаешься нельзя. Мне, например, он очень понравился. Цитата Hryak @ Я про то, что with в Делфи не является преимуществом перед С++, в котором with нету и не нужен он там. Ну, как это не является? Он есть, и он не бесполезен. Когда это лишний инструмент не являлся преимуществом, особенно если ты полностью свободен в выборе - использовать или нет? К тому же читабельность кода улучшается в разы, попросту для глаз менее утомительно. |
|
Сообщ.
#257
,
|
|
|
|
Мне кажется,в си можно ещё без объявления переменной сделать что-то типа.
![]() ![]() ... { #define FC m_VeryVeryVeryVeryVeryVeryLongName FC.member.function(); FC.member.function(); FC.member.function(); FC.member.function(); FC.member.function(); } ... Это я насчёт with |
|
Сообщ.
#258
,
|
|
|
|
Цитата Астарот @ Когда это лишний инструмент не являлся преимуществом, особенно если ты полностью свободен в выборе - использовать или нет? Ключевое слово "лишний". Цитата lava @ Мне кажется,в си можно ещё без объявления переменной сделать что-то типа. Можно, но это не наш метод |
|
Сообщ.
#259
,
|
|
|
|
Цитата lava @ Мне кажется,в си можно ещё без объявления переменной сделать что-то типа. ![]() ![]() ... { #define FC m_VeryVeryVeryVeryVeryVeryLongName FC.member.function(); FC.member.function(); FC.member.function(); FC.member.function(); FC.member.function(); } ... Это я насчёт with За такой код - паяльник ректально ![]() Забудешь сделать undef и, возможно, будет тебе потом very very very cool bug ![]() И потом, для выражений это не прокатит, поскольку всякий раз выражение будет вычисляться заново - не слишком симпатичная перспектива. |
|
Сообщ.
#260
,
|
|
|
|
Цитата Nich @ Ключевое слово "лишний" Карман что ли тянет? Или спать не дает? |
|
Сообщ.
#261
,
|
|
|
|
Цитата Dantes @ Ну, что с Delphi взять-то? Я ж про идею говорю, а не о её кривом воплощении в Delphi. Посмотри ещё раз на такой синтаксисВот так гораздо лучше. Цитата Длина в 5 - 6 символов - вполне нормальное имя для локальной области видимости (кто-то там говорил про самодокументируемый код?). Для переменной, живущей несколько строк, когда её объявление и инициализация под глазами, можно и короче. Я пишу всегда wc, а не wcMainWnd, даже если регистрируется класс главного окна. Цитата В течение конструирования объект не считается существующим. Или ты опять хотел сказать что-то другое? ![]() При чём тут конструктор? Я лишь прокомментировал делфёвый код. Там речь шла не про конструирование. |
|
Сообщ.
#262
,
|
|
|
|
Про делегаты опять молчек....
|
|
Сообщ.
#263
,
|
|
|
|
Цитата Dantes @ Забудешь сделать undef и, возможно, будет тебе потом very very very cool bug Я не сделать забыл - я написать его забыл... Хотя паяльник действительно в такой ситуации поможет меньше забывать... Цитата Dantes @ И потом, для выражений это не прокатит, поскольку всякий раз выражение будет вычисляться заново - не слишком симпатичная перспектива. Ну, я ж не говорю это повсеместно использовать. Я только про with - тут говорили как вариант объявление локального указателя на объект и работу через него. Мне просто показалось, что можно обойтись и без указателя =) |
|
Сообщ.
#264
,
|
|
|
|
Цитата Flex Ferrum @ Про делегаты опять молчек.... ... а что в поставленной задаче сложного? Если чесно, код я не совсем понял ... В Дельфях так же легко создавать компоненты в реальном времени ... и присваиватьим один и тот же обработчик, а уже в самом обработчике различать их ... или? |
|
Сообщ.
#265
,
|
|
|
|
Цитата Flex Ferrum @ Про делегаты опять молчек.... Предлагаю переименовать тему: with в Дельфи: быть или не быть. |
|
Сообщ.
#266
,
|
|
|
|
Еле осилил!
Меня, честно говоря, удивляет, как, действительно профессионалы в области программирования спорят из-за того, что, как мне кажется, на самом деле не существует! Я год писал на Pascal’е (учебная программа), потом сам пересел на Delphi и вот уже пишу на ней четыре года. Год, как мучаю C++, и еще не встретил кода написанного на нем, который я бы не смог перевести в Delphi (именно поэтому и стал мучить C++, так как появилась необходимость в переводе). Есть предложение! Один человек пишет код, скажем на C++, выкладывает его здесь, и его переводят в Delphi. Потом наоборот. Писать можно (и даже нужно!) использую особую специфику языка, чтобы было сложнее переводить. Мой прогноз:Проверим? |
|
Сообщ.
#267
,
|
|
|
|
Цитата Profi @ Любую реализацию на одном языке переведут в другой. Ок. Ты и начинай. |
|
Сообщ.
#268
,
|
|
|
|
Profi, а не помнишь, в голосованиях тема была похожая, мы там тоже спорили чуть ли не до драки?
Не помню, как называлась... вроде про среды программирования что-то. |
|
Сообщ.
#269
,
|
|
|
|
Ой ток не нада про переводы.. щас они такого намутят, что без поллитры не разберешь..
Иногда достает умопомрачительное количество typedef'oв, +#define костылизация... Ну а так.. хе.. на дворе, 2007г, а в HLL как был уровень каменного века, так и остался.Как сторонник концепции RISC, предпочту использовать HLL, где меньше знаков препинания, т.е Delphi. Больше всего в C/С++, меня раздражает -> , ::. В OPascal, всё через точку, а Delphi вариант этого языка, допускает много вольностей вплоть до неиспользования ^, и тп. |
|
Сообщ.
#270
,
|
|
|
|
Вот мне интересно, как вы в Делфи вот такую штуку переведете?
![]() ![]() template<class _InIt, class _Ty> inline _InIt _Find(_InIt _First, _InIt _Last, const _Ty& _Val) { // find first matching _Val for (; _First != _Last; ++_First) if (*_First == _Val) break; return (_First); } Добавлено Кстати, вот нашёл тему, о которой я говорил Кто создает самые лучшие IDE? |