
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.26] |
![]() |
|
Страницы: (117) « Первая ... 72 73 [74] 75 76 ... 116 117 ( Перейти к последнему сообщению ) |
![]() |
Сообщ.
#1096
,
|
|
О ура, наконец Дельфисты признали преимущество С++ ![]() Где это сказано? Чем вот это не список? ![]() ![]() struct IClonable { virtual IClonable *clone() const = 0; }; |
Сообщ.
#1097
,
|
|
|
Цитата archimed7592 @ Чем вот это не список? ![]() ![]() struct IClonable { virtual IClonable *clone() const = 0; }; Лучше вот так, иначе дельфисты неосилят ![]() ![]() ![]() #define interface struct interface IClonable { virtual IClonable *clone() const = 0; }; |
![]() |
Сообщ.
#1098
,
|
|
Цитата Alex Forth @ Лучше вот так, иначе дельфисты неосилят ![]() Лучше уж тогда так: ![]() ![]() #define interface struct #define abstract = 0 interface IClonable { virtual IClonable *clone() const abstract; }; ![]() |
Сообщ.
#1099
,
|
|
|
Цитата Flex Ferrum @ дык по сути это тоже самое, что у тебя написано здесь: Delphi vs C++ (сообщение #1728002) Хорошая грамматика. Только она леворекурсивная. А LR-парсер ручками задолбаешься писать... |
![]() |
Сообщ.
#1100
,
|
|
И const убрать - нах он им, дельфистам нужен
![]() Кстати, господа Дельфисты, просветити склерозного дедушку: есть ли в Дельфи такое понятие, как константный объект? Желательно сразу с примером. |
Сообщ.
#1101
,
|
|
|
Цитата archimed7592 @ О ура, наконец Дельфисты признали преимущество С++ Почему наконец-то? Я с самого начала говорил, что С++ хорошо подходит для системных задач. Цитата archimed7592 @ Если в С++ есть фича, которой с твоих слов нет в других языках, то это что плохо говорит о С++? Нет. Это ты утверждаешь, что без шаблонов жизни нет. |
Сообщ.
#1102
,
|
|
|
Цитата Romkin @ Почему наконец-то? Я с самого начала говорил, что С++ хорошо подходит для системных задач. Ок, давай определения системной и прикладной областей ![]() ЗЫ: вдогонку ![]() ![]() #define interface struct #define abstract = 0 #define begin { #define end } interface IClonable begin virtual IClonable *clone() const abstract; end |
![]() |
Сообщ.
#1103
,
|
|
Цитата Romkin @ Я с самого начала говорил, что С++ хорошо подходит для системных задач. CGAL - системная библиотека, да? ![]() Блин, Romkin, не позорься, а? Цитата Romkin @ Это ты утверждаешь, что без шаблонов жизни нет. Я привёл конкретный пример прикладной библиотеки. Рассказал насколько она удобна, быстра и всеобъемлюща. Есть конкретная задача и есть решение на С++, но нет на Дельфи... маАдой человек, у вас с логикой всё хорошо? |
Сообщ.
#1104
,
|
|
|
Цитата Alex Forth @ Ок, давай определения системной и прикладной областей Хм. Системная область - область служебных библиотек и интерфейсов, которые потом используются в прикладной области для написания конечного приложения. Так пойдет? Вы делаете специфичные вещи более-менее низкого уровня, часто связанного с работой с оборудованием, мы их используем. Цитата archimed7592 @ Есть конкретная задача и есть решение на С++, но нет на Дельфи... Зачем писать то, что уже есть? Кстати, там опять экспонируются классы? То есть, ее можно использовать только в С++? |
Сообщ.
#1105
,
|
|
|
Камень в огород C++ от Джоэла Спольски:
Цитата Почти все строковые классы C++ перегружают оператор +, и для конкатенации строчек можно писать s+"bar". Но как ни старайся, никакой на свете строковый класс C++ не даст вам написать "foo"+"bar", поскольку строковые литералы в C++ всегда имеют тип char*, а не string. Абстракция прохудилась так, что языком C++ её не заткнёшь. (Интересно, что историю развития C++ можно описать как историю затыкания дырок в абстракции строк. Уж не знаю, отчего бы не добавить к языку элементарный класс строчек.) Статейка о дырявых абстракциях. |
![]() |
Сообщ.
#1106
,
|
|
Цитата Romkin @ Зачем писать то, что уже есть? Есть? Отлично, где готовая ф-ция вычисления выпуклой оболочки для заданного набора точек? Цитата Romkin @ Кстати, там опять экспонируются классы? Не знаю такого термина "экспонируются классы". Что это? Опять какое-то умное слово? Цитата Romkin @ То есть, ее можно использовать только в С++? Ясный пень... Я не слышал ещё про язык, поддерживающий такие же мощные шаблоны, как и С++. |
Сообщ.
#1107
,
|
|
|
Ну скажем нечто шаблоноподобное
![]() Цитата Flex Ferrum @ Ну я C# не интересуюсь. Так вроде бы со второй версии уже давно как. Только вот до плюсовых шаблонов шарповым ооооооооой как далеко... ![]() т.е. и Borland в Delphi решила использовать эту "совершенно бесполезную фичу"? А множественное наследование когда реализуют? ![]() |
![]() |
Сообщ.
#1108
,
|
|
Цитата Smike @ Камень в огород C++ от Джоэла Спольски: Ещё ни разу не испытывал от этого трудностей... В частности, что мешает написать string("foo") + "bar" ? Смайк, так что там с интерфейсами? Я пока не нашёл различий между Дельфёвым интерфейсом и плюсовым абстрактным классом. Добавлено Цитата trainer @ Ну скажем нечто шаблоноподобное ![]() Есть очень большая разница между compile-time шаблонами и run-time шаблонами. В частности, опять же, нельзя производить никакой настройки во время компиляции(т.е. всё те же оверхэды). |
Сообщ.
#1109
,
|
|
|
Цитата archimed7592 @ Есть? Отлично, где готовая ф-ция вычисления выпуклой оболочки для заданного набора точек? Придуриваешься? CGAL уже есть!!! Ее использовать надо! Правда, как обычно, программисты С++ пишут только для программистов С++, как я уже говорил. И как обычно, даже не предполагают, что их "всеобъемлющая" библиотека, увы, отнюдь не всеобъемлющая, именно из-за этого. |
Сообщ.
#1110
,
|
|
|
Цитата trainer @ т.е. и Borland решила использовать эту "совершенно бесполезную фичу"? Я её таковой не называл. Цитата trainer @ А множественное наследование когда реализуют? ![]() Вот это довольно бесполезная фича, которой нету ни в C#, ни в Java. Добавлено Цитата archimed7592 @ В частности, что мешает написать string("foo") + "bar" ? Кто там говорил про костыли? ![]() Цитата archimed7592 @ Смайк, так что там с интерфейсами? Я пока не нашёл различий между Дельфёвым интерфейсом и плюсовым абстрактным классом. ОК, как мне получить экземпляр "абстрактного класса" из класса, наследующегося от нескольких? То есть некое подобие QueryInterface. |