Здравствуйте, Ellin, Вы писали:
E>1. Уборка мусора. E>Про сборку мусора можешь почитать в классической книге Дж. Коплиена "Программирование на С++" за 1992 год(!), E>страница 333 9.5. Уборка мусора. E>2. Рефлексия. Этот вопрос уже неоднократно обсуждался на форуме С/С++ вот ссылка на библиотеку, которая позволяет реализовать рефлексию для С++ в его нынешнем состоянии: rsdn
. Вобщем не вижу сложностей с реализацией рефлексии на С++ такой карпорацией, как MS. E>3. Emit Собственно есть рефлексия — есть Emit. E>И последнее, надеюсь с твоей стороны есть понимание, что я имел ввиду потенциальный C++ 8.0, когда говорил о нем, с ключевыми словами, с типами классов — типа рефлексируемый и пр., не нынешний?
Да вы батенька просто изощеренный садистЪ. Мои тапочки просто лопоются от смеха... Бедные мои тапочки... как мне их жалко...
Настольконе соответствующие действительности высказывания я даже коментировать не хочу.
Вобщем С++ хороший язык... когдато был...
А сейчас рулят ковровые клинья и танковые бомбандировки тфу ты управляемые среды, а дальше будут рулить упровляемые ОС типа Singularity для которых на С++ вобще писать будет довольно проблематично.
E>И всетаки есть. На моё сообщение не смотри, смотри выше.
Ну модератор тоже человек... модератор тоже иногда опечатывается...
Кстати придиратся к опечаткам запрещено правилами сайта...
К томуже опечаточка как говорят по Фрейду... многовато два плюса для этого языка... одного хватит.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, Ellin, Вы писали:
E>Могу с уверенностью сказать, даже не видев вашего проекта, что если создать аналогичный проект на С++ — клон то есть, то качество его исполнения будет гораздо выше. Сроки тоже несколько выше, но приемлемо.
На чём основано столь смелое заявление?
E>На мой взгляд С# в нынешнем его состоянии подходит для создания прототипов ПО, быстро накляпал полуработающию прогу, а потом, когда заказчику понравилось — написал нормальную рабочию версию на С++.
Это большое заблуждение, вызванное ещё более большым самоуспокоением.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, vdimas, Вы писали:
V>>Для обработки звука, например, уже вполне всего хватает. V>>Я вот недавно баловался с реал-тайм эффектами для гитары на своем компе. Пробовал и на С++ и на С#. В первом случае загрузка проца 5%, во втором — 7..9%. WH>А когда доделают оптимизатор то разници вобще не будет.
будет все-равно из-за:
— проверки диапазонов массивов при обращении
— из-за того, что массивы — это всегда reference type, т.е. наличие массива чего-либо в классе — это доп. уровень коссвенной адресации.
— вызов метода по делегату медленнее виртуальной ф-ии, а в С++ вызов по указателю на член — быстрее, чем вызов виртуальной ф-ии
из-за всех этих вещей приходится идти на всякие ухищрения и иногда избыточный объем кодинга. В С++ варианте размер кода для этих задач потрясающе мал, в отличие от аналогичного кода на C#.
Здравствуйте, vdimas, Вы писали:
V>из-за всех этих вещей приходится идти на всякие ухищрения и иногда избыточный объем кодинга. В С++ варианте размер кода для этих задач потрясающе мал, в отличие от аналогичного кода на C#.
Потрясающе мал — это 100к хеллоу ворд, если подключить стримы.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, vdimas, Вы писали:
V>будет все-равно из-за: V>- проверки диапазонов массивов при обращении
Очень хорошо поддается оптимизации. V>- из-за того, что массивы — это всегда reference type, т.е. наличие массива чего-либо в классе — это доп. уровень коссвенной адресации.
Если оптимизатор достаточно циничен то код типа
class Foo
{
int[] _arr = new int[10];
}
если ссылка на массив не передается за приделы класса массив вполне может быть помещен в тело класса. Называет ескей анализ. V>- вызов метода по делегату медленнее виртуальной ф-ии, а в С++ вызов по указателю на член — быстрее, чем вызов виртуальной ф-ии
Скорость вызова делегата можно довести до скорости вызова по указателю на челен в С++. Идаже в некоторых случаях сделать ее выше. Почему досих пор этого не сделано я не понимаю.
V>из-за всех этих вещей приходится идти на всякие ухищрения и иногда избыточный объем кодинга. В С++ варианте размер кода для этих задач потрясающе мал, в отличие от аналогичного кода на C#.
Если вобще говорить о будущем управляемых сред то там ИМХО будет рулить что-то типа немерле. А если еще и в ВМ ввсети первоклассные списки, функции, кортежи, неизменяемые типы данных то раздолье для оптимизатора будет просто необычайное.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>Да вы батенька просто изощеренный садистЪ. Мои тапочки просто лопоются от смеха... Бедные мои тапочки... как мне их жалко...
[Ответ]
Эх не знаю, не знаю. Написать новый язык программировани, новую среду, новую технологию, кучу библиотек, потом
переписать весь свой софт — это со стороны MS не садизм?(исклчительно в техническом плане, без учета прибыли?) Вместо того, чтобы доработать уже имеющееся. Дописать для С++ новые ключевые слова типа reflection class или т.п., путем расширения языка создать основу для нового стандарта, как это было в прошлом.
WH>Настольконе соответствующие действительности высказывания я даже коментировать не хочу. WH>Вобщем С++ хороший язык... когдато был...
[Ответ]
Вот ... вот. Это не модно, это старо. Постоянно встречаю людей, которые совершенно не разбираются в музыке, но пытаются с тобой говорить как знатоки, на высоком уровне. Они говорят: "Слышал группу ... — новое, полный улет. Новое." Это ведь внемузыкальная характеристика — новое. И новое не обязательно должно быть гораздо лучше старого или хотябы того же уровня. Случается так, что долго не появляется аналога чему-то классическому, эпохальному, культовому. Одим словом, просто сказать любимые маркетинговые термины — новое, уникальное этого мало. Нужно указать и на качественные преимущества продукта.
[Еще про C#]
Меня просто донимает отсутсвие в нем банальных вещей: 1) множественного наследования (писать в каждом классе одну и ту же реализацию просто устал), 2) перегрузки оператора (), 3) шаблонов С++ со всеми их возможностями, без всяких урезок.
[Кросс-платформенность]
Уважаемые! .NET даже под Windows 95 не портировали, а вы хотите Linux? Когда в MS говорят про кроссплатформенность, они скорее всего подразумевают перенос с Win2000 на WinXP, c WinXP на Win98, c Win98 на WinXP, а Linux — что такое Linux?
WH>А сейчас рулят ковровые клинья и танковые бомбандировки тфу ты управляемые среды, а дальше будут рулить упровляемые ОС типа Singularity для которых на С++ вобще писать будет довольно проблематично.
[Ответ]
Все это похоже на перепродажу уже имеющегося у меня товара. Я не хочу покупать то, что я уже покупал, но под другим названием. Те же виртуальные машины Win95 не могут для меня не ассоциироваться с виртуальными машинами Джавы. Та же идеалогия и даже терминалогия. Win95 — в некотором смысле управляемая ОС.
Здравствуйте, WolfHound, Вы писали:
WH>Ну например Кваку погонять... гораздо болие продуктивное занятие...
Я к компьютерным играм отношусть негативно, поэтому не соглашусь.
WH>Ну если для тебя нету разницы между C# и кривущей библиотекой WinForms то разговор на этом можно закончить.
Ах, ну если в таком ключе, то ... пардон.
E>>Сроки да — С# дает приимущество для большениства программистов, а вот качество под сомнением. WH>Аргументы? Только не говори что C# тормоз и памяти много жрет. Ни то ни другое не соответствует реальности если все делать прямыми руками.
Опыт. Да и только. Для .NET нету нормальных элементов управления, всюду exceptions, работает только с поверхностной точки зрения, функционал сильно урезан, чуть влево-вправо — лезем в WinAPI. В экономике есть такой метод экспертных оценок, я руководствуюсь своим опытом и только.
E>>Могу с уверенностью сказать, даже не видев вашего проекта, что если создать аналогичный проект на С++ — клон то есть, то качество его исполнения будет гораздо выше. Сроки тоже несколько выше, но приемлемо. WH>Я иногда жалею что на сайте запрещена падонковщина... А я модератор и мне надо быть образцом для подражания.
Ну я тут вообще гость. Вы модераторы, администраторы понапридумывали условий и еще мне же жалуетесь. Заведи второй ник — матюкальник.
WH>ЗЫ Кстати про С++ мне расказывать не надо. Я сам о нем могу кому хочешь расказать. Причем могу расказать и про сильные стороны и про слабые.
Да ладно, ладно. Я на это и расчитываю. WH>ЗЗЫ У С++ не считая легаси кода есть своя ниша но она быстро сокращается.
Не согласен. С# расширяет ИТ рынок и C++ также расширяет зону охвата.
PS Придумал ассоциацию для .NET программ: они у меня ассоциируются с эдакими продвинутыми MS Visio картинками, только здесь кнопки можно нажимать, списки смотреть, а реально работать — мучительно.
Я не понимаю ты серьезно или прикалываешься? E>Эх не знаю, не знаю. Написать новый язык программировани, новую среду, новую технологию, кучу библиотек, потом переписать весь свой софт — это со стороны MS не садизм?(исклчительно в техническом плане, без учета прибыли?)
Нет они поступили очень разумно. Хотя виртуальную машину можно было сделать получше. E>Вместо того, чтобы доработать уже имеющееся. Дописать для С++ новые ключевые слова типа reflection class или т.п., путем расширения языка создать основу для нового стандарта, как это было в прошлом.
Я очень много думал по этому поводу. Это не реально.
E>Вот ... вот. Это не модно, это старо. Постоянно встречаю людей, которые совершенно не разбираются в музыке, но пытаются с тобой говорить как знатоки, на высоком уровне. Они говорят: "Слышал группу ... — новое, полный улет. Новое." Это ведь внемузыкальная характеристика — новое. И новое не обязательно должно быть гораздо лучше старого или хотябы того же уровня. Случается так, что долго не появляется аналога чему-то классическому, эпохальному, культовому. Одим словом, просто сказать любимые маркетинговые термины — новое, уникальное этого мало. Нужно указать и на качественные преимущества продукта.
Доказательства по аналогии это демагогия. В сад.
Кстати я тут думаю не распустить ли мне пальцы веером... или ты сам поймешь что тут
что-то не так...
E>Меня просто донимает отсутсвие в нем банальных вещей: E>1) множественного наследования (писать в каждом классе одну и ту же реализацию просто устал),
Понадобилось один раз за два года работы... В С++ использовал чаще ибо приходилось применять совершенно иные принципы проектирования. E>2) перегрузки оператора (),
Есть делегаты. E>3) шаблонов С++ со всеми их возможностями, без всяких урезок.
Зачем?
E>Уважаемые! .NET даже под Windows 95 не портировали,
Официально да. Не официально сам не пробывал ибо 95х не имею... но народ говорит что работает. E>а вы хотите Linux?
MONO E>Когда в MS говорят про кроссплатформенность, они скорее всего подразумевают перенос с Win2000 на WinXP, c WinXP на Win98, c Win98 на WinXP,
Для MS важнее кроссжелезячность те чтобы одна и таже программа работала без перекомпиляции и на x86, и на x86-64, и на Itanium'е... и черт знает еще на каком железе. E>а Linux — что такое Linux?
В самом деле, а что такое Линух? Нет никакой ложки...
WH>>А сейчас рулят ковровые клинья и танковые бомбандировки тфу ты управляемые среды, а дальше будут рулить упровляемые ОС типа Singularity для которых на С++ вобще писать будет довольно проблематично. E>Все это похоже на перепродажу уже имеющегося у меня товара. Я не хочу покупать то, что я уже покупал, но под другим названием. Те же виртуальные машины Win95 не могут для меня не ассоциироваться с виртуальными машинами Джавы. Та же идеалогия и даже терминалогия. Win95 — в некотором смысле управляемая ОС.
Бедные мои тапочки... Такого простите за выражение бреда я давно не слышал... даже во флейме...
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH> Хотя виртуальную машину можно было сделать получше.
Чем? E>>Вместо того, чтобы доработать уже имеющееся. Дописать для С++ новые ключевые слова типа reflection class или т.п., путем расширения языка создать основу для нового стандарта, как это было в прошлом. WH>Я очень много думал по этому поводу. Это не реально.
Вот этого я понять совершенно не могу. По же не реально ??? Ёлки-палки!
WH>Доказательства по аналогии это демагогия. В сад.
Это не тот случай, никакой демагогии. Я совершенно спокойно мог бы говорить и про программистов.
WH>Кстати я тут думаю не распустить ли мне пальцы веером... или ты сам поймешь что тут
что-то не так...
Не надо, хорошо помню обсуждение WM_PINT.
E>>Меня просто донимает отсутсвие в нем банальных вещей: E>>1) множественного наследования (писать в каждом классе одну и ту же реализацию просто устал), WH>Понадобилось один раз за два года работы... В С++ использовал чаще ибо приходилось применять совершенно иные принципы проектирования.
Хм. Дайте дагадаюсь, что вы теперь делаете все члены класса public и бежите по ниму другим классом, в котором теперь заложен функционал. Так поступают Java программисты.
E>>2) перегрузки оператора (), WH>Есть делегаты.
Ё! А () зачем убрали? Хочу () и всё тут. Привык.
E>>3) шаблонов С++ со всеми их возможностями, без всяких урезок. WH>Зачем?
Для опредления семейств классов.
WH>>>А сейчас рулят ковровые клинья и танковые бомбандировки тфу ты управляемые среды, а дальше будут рулить упровляемые ОС типа Singularity для которых на С++ вобще писать будет довольно проблематично. E>>Все это похоже на перепродажу уже имеющегося у меня товара. Я не хочу покупать то, что я уже покупал, но под другим названием. Те же виртуальные машины Win95 не могут для меня не ассоциироваться с виртуальными машинами Джавы. Та же идеалогия и даже терминалогия. Win95 — в некотором смысле управляемая ОС. WH>Бедные мои тапочки... Такого простите за выражение бреда я давно не слышал... даже во флейме...
?
Ну и в чем бред?
Здравствуйте, Ellin, Вы писали:
E>Я к компьютерным играм отношусть негативно, поэтому не соглашусь.
Не точно не наш человек.
E>Опыт. Да и только.
И что ты такое под .NET написал то? E>Для .NET нету нормальных элементов управления,
Проблемы с ГУИ? Еще раз .NET != WinForms. WinForms это вобще временная библиотека хотя во втором фреймворке они ее и основательно переработали.
Будущие ГУИ под виндами это Aero. E>всюду exceptions,
А чем тебя не устраивают exceptions? ИМХО лучший способ сообщить о том что что-то пошло не так, а с кодами возврата сплошное мучение... ибо их постоянно проверять надо... и зачем мне этот геморой если есть exceptions? E>работает только с поверхностной точки зрения,
Поверь мне я залезал в потроха .NET'а на столько глубоко что тебе и не снилось... и там за исключением нескольких мелких бажиков в тех местах где не ступала нога человека все очень хорошо работает. E>функционал сильно урезан,
Функционал чего? E>чуть влево-вправо — лезем в WinAPI.
Я за два года работы из WinAPI достал только две функции... QueryPerformanceCounter и QueryPerformanceFrequency... причем во втором .NET'е они и это исправили... Stopwatch... E>В экономике есть такой метод экспертных оценок, я руководствуюсь своим опытом и только.
Хреновый у тебя опыт... ты не разобравшись в предмете попытался что-то делать и у тебя ничего не получилось... и правильно ибо философия C# не имеет ничего общего с философией С++. Это совершенно другой мир с совершенно другими законами. И пытатся писать на нем как на С++ по меньшей мере глупо.
E>Ну я тут вообще гость. Вы модераторы, администраторы понапридумывали условий и еще мне же жалуетесь. Заведи второй ник — матюкальник.
Чтобы потом удалить это сообщение и забанить собственный матюгальник? Зачем мне все это? Я ленивый и не стану делать работу которая ничего не изменит.
E>Да ладно, ладно. Я на это и расчитываю.
На что это? E>Не согласен. С# расширяет ИТ рынок и C++ также расширяет зону охвата.
E>PS Придумал ассоциацию для .NET программ: они у меня ассоциируются с эдакими продвинутыми MS Visio картинками, только здесь кнопки можно нажимать, списки смотреть, а реально работать — мучительно.
Ты это можешь расказывать тем кто не прополз на брюхе все потроха С++ и .NET, а мне эти глупости говорить не надо. Я всеравно не поверю. Ибо я знаю что, как и какой ценой.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, Ellin, Вы писали:
WH>> Хотя виртуальную машину можно было сделать получше. E>Чем?
Первоклассными (first-class) функцциями, списками, кортежами, неизменяемыми данными... вобщем поддержку функциональных языков на всю катушку.
WH>>Я очень много думал по этому поводу. Это не реально. E>Вот этого я понять совершенно не могу. По же не реально ??? Ёлки-палки!
Ну посмотри что получилось у MS с C++/CLI. Совершенно нежизнеспособный уродец. Уже не С++ и еще не C#. Про MC++ вобще молчу.
E>Не надо, хорошо помню обсуждение WM_PINT.
Чего? MSDN не знает такого зверя...
E>Хм. Дайте дагадаюсь, что вы теперь делаете все члены класса public и бежите по ниму другим классом, в котором теперь заложен функционал. Так поступают Java программисты.
Чего? Продемонстрируйте пожалуйста.
WH>>Есть делегаты. E>Ё! А () зачем убрали? Хочу () и всё тут. Привык.
От дурных привычек надо избавлятся тут вам не С++.
WH>>Зачем? E>Для опредления семейств классов.
Мне генериков из C#2 вполне хватает
WH>>Бедные мои тапочки... Такого простите за выражение бреда я давно не слышал... даже во флейме... E>Ну и в чем бред?
В том что ты совершенно не понимаешь что такое управляемая ОС, чем она отличается от обычной и почему это качественный скачек по сравнению с тем что есть сейчас.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
E>>Для .NET нету нормальных элементов управления, WH>Проблемы с ГУИ? Еще раз .NET != WinForms. WinForms это вобще временная библиотека хотя во втором фреймворке они ее и основательно переработали.
А я про WinForms и не говорил. Я говорил гораздо шире. Их впринципе нет.
E>>работает только с поверхностной точки зрения, WH>Поверь мне я залезал в потроха .NET'а на столько глубоко что тебе и не снилось... и там за исключением нескольких мелких бажиков в тех местах где не ступала нога человека все очень хорошо работает.
Рефлектором пользоваться могут даже студентики. И они меня совершенно не волнуют: мне главное, чтобы конечное решение работало.
E>>функционал сильно урезан, WH>Функционал чего?
Всего пользовательского интерфейса. Нарисуй битмап в хидере Лист Контрола, например.
E>>чуть влево-вправо — лезем в WinAPI. WH>Я за два года работы из WinAPI достал только две функции... QueryPerformanceCounter и QueryPerformanceFrequency... причем во втором .NET'е они и это исправили... Stopwatch...
А я гораздо больше. Слушай. Получается, что я больше тебя кода пишу
E>>В экономике есть такой метод экспертных оценок, я руководствуюсь своим опытом и только. WH>Хреновый у тебя опыт... ты не разобравшись в предмете попытался что-то делать и у тебя ничего не получилось... и правильно ибо философия C# не имеет ничего общего с философией С++. Это совершенно другой мир с совершенно другими законами. И пытатся писать на нем как на С++ по меньшей мере глупо.
Дык получилось, но какими усилиями ... Титаническими. И зачем было создавать этот новый мир, когда есть практически совершенный?
E>>Да ладно, ладно. Я на это и расчитываю. WH>На что это?
На твой опыт. E>>Не согласен. С# расширяет ИТ рынок и C++ также расширяет зону охвата. WH>
Тапочки?
Здравствуйте, Ellin, Вы писали:
E>А я про WinForms и не говорил. Я говорил гораздо шире. Их впринципе нет.
Ну не знаю что ты такое пишешь... но мне хватало.
E>Рефлектором пользоваться могут даже студентики. И они меня совершенно не волнуют: мне главное, чтобы конечное решение работало.
Так оно и прекрасно работает.
E>Всего пользовательского интерфейса.
А то что там кроме ГУИ есть еще очень много полузностей какбы не всчет? Не знаю как у тебя но у меня подавляющая часть кода к ГУИ вобще отношения не имеет. Хотя в конце концов ГУИ получается тоже не мало. E>Нарисуй битмап в хидере Лист Контрола, например.
Зачем? Покажи скриншот того что нужно получить.
E>А я гораздо больше. Слушай. Получается, что я больше тебя кода пишу
Нет получается ты его не правильно пишешь...
E>Дык получилось, но какими усилиями ... Титаническими.
И эти усилия того стоили. E>И зачем было создавать этот новый мир, когда есть практически совершенный?
Ты серьезно не видишь проблем С++?
WH>>На что это? E>На твой опыт.
Мой опыт говорит что C# рулит в подавляющем большенстве задач.
А если сделать нармальную ВМ, на основе этой ВМ сделать правильную ОС то будет вобще супер.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>>>Я очень много думал по этому поводу. Это не реально. E>>Вот этого я понять совершенно не могу. По же не реально ??? Ёлки-палки! WH>Ну посмотри что получилось у MS с C++/CLI. Совершенно нежизнеспособный уродец. Уже не С++ и еще не C#. Про MC++ вобще молчу.
Так это скорее провокация против С++. Сначала запретили множественное наследование, потом начали С++ натягивать. Да и управляемые классы также нельзя в шаблонах использовать. Это МС++ — это пиар С#, если хотели бы сделали правильно, для этого возможности есть.
E>>Не надо, хорошо помню обсуждение WM_PINT. WH>Чего? MSDN не знает такого зверя...
WM_PRINT, опечатался, извиняюсь.
E>>Хм. Дайте дагадаюсь, что вы теперь делаете все члены класса public и бежите по ниму другим классом, в котором теперь заложен функционал. Так поступают Java программисты. WH>Чего? Продемонстрируйте пожалуйста.
Допустим есть пару функций, которые надо унаследовать. В C# делаем интерфейс и каждый раз делаем имплиментацию. Java программисты рассказали мне трюк, в котором они выносят эти функции в отдельный класс, мемберы тех классов, которые в С++ были бы наследниками, и с которыми должны работать эти методы делают public, затем "обрабатывают", отдельным классом — им очень нравиться, причем по их признанию можно сделать мемберы private, но завести public ассоциативный массив.
WH>>>Есть делегаты. E>>Ё! А () зачем убрали? Хочу () и всё тут. Привык. WH>От дурных привычек надо избавлятся тут вам не С++.
И что же в них дурного? Что надо писать новый язык программирования?
WH>>>Зачем? E>>Для опредления семейств классов. WH>Мне генериков из C#2 вполне хватает
Они беднее шаблонов в С++, я сейчас точно не помню, но при столкновении с ними многое не удалось реализовать. Что конкретно в памяти не осталось, однако осталось мнение. По-моему я хотел передавать в качестве параметра инстанцирования класс, чей метод вызывался в теле шаблонного класса. Так называемые политики, как в Loki, например.
WH>>>Бедные мои тапочки... Такого простите за выражение бреда я давно не слышал... даже во флейме... E>>Ну и в чем бред? WH>В том что ты совершенно не понимаешь что такое управляемая ОС, чем она отличается от обычной и почему это качественный скачек по сравнению с тем что есть сейчас.
Давай так, в пару словах что же это такое и тут станет все ясно.
Здравствуйте, Ellin, Вы писали: E>1. Уборка мусора. E>Про сборку мусора можешь почитать в классической книге Дж. Коплиена "Программирование на С++" за 1992 год(!), E>страница 333 9.5. Уборка мусора.
Жаль, что у меня нет под рукой этой книги. E>2. Рефлексия. Этот вопрос уже неоднократно обсуждался на форуме С/С++ вот ссылка на библиотеку, которая позволяет реализовать рефлексию для С++ в его нынешнем состоянии: rsdn
. Вобщем не вижу сложностей с реализацией рефлексии на С++ такой карпорацией, как MS. E>3. Emit Собственно есть рефлексия — есть Emit.
Очень смешно. E>И последнее, надеюсь с твоей стороны есть понимание, что я имел ввиду потенциальный C++ 8.0, когда говорил о нем, с ключевыми словами, с типами классов — типа рефлексируемый и пр., не нынешний?
Это конечно есть. Просто дотнет появился вовсе не от того, что биллу некуда было деть несколько миллиардов. Оказалось, что развивать технологии, основанные на COM (и, в частности, МС VC++) уже некуда. Твое непонимание природы вещей настолько глубоко, что я даже не знаю, как его заполнить. Читай, исследуй — через некоторое время ты поймешь, что если доработать С++ в том стиле, про который ты говоришь, то получится Java. E>>> И еще: в заголовке опечатка. S>>Неа, нету. E>И всетаки есть. На моё сообщение не смотри, смотри выше.
S>>З.Ы. Прежде чем делать столь уверенные заявления, не мешает немножко поближе познакомиться с предметом. Хотя бы с одним из вынесенных в заголовок темы. E>Многие программисты — аутентичные интраверты. Они очень стеснительны и неуверены в себе, ни с девушками, ни в обычной беседе. Смелые заявления — это не для них. У меня такое ощущение, что это и про тебя. Я прав?
Нет.
1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, IT, Вы писали:
IT>Здравствуйте, vdimas, Вы писали:
V>>из-за всех этих вещей приходится идти на всякие ухищрения и иногда избыточный объем кодинга. В С++ варианте размер кода для этих задач потрясающе мал, в отличие от аналогичного кода на C#.
IT>Потрясающе мал — это 100к хеллоу ворд, если подключить стримы.
Я имел в виду конечно размер текстовых файлов, т.е. то, что мне ручками набивать надо. У меня там вычисления, и алгоритмы в мои базовые классы девайсов можно подавать хоть вбок, хоть поперек. Хоть обычными ф-иями из одной строчки, хоть как структура, например — фильтр N-го порядка. Даже слоты и сигналы не юзал — не надо было.
Пытался делать аналогично на дотнете... пришел к генерации делегатов в runtime. Т.е. у меня что-то вроде:
public interface IInvoke<RetT, ArgT> {
RetT Invoke(ArgT arg);
}
public sealed class MyDelegate<RetT, ArgT>: MulticastDelegate, IInvoke<RetT, ArgT> {
public RetT Invoke(Argt arg);
}
Т.е. делегат имплементирует IInvoke<> и так же функциональные объекты его имплементируют...
Напрямую так писать низзя — компилятор не хочет наследовать MulticatDelegate, но через байткодогенерацию можно
Вот, дойдут руки надо будет сгенерить до 32 (64/128/...) шаблонных параметров и сохранить в виде либы. Вот тебе и будут многоликие функциональные объекты чистой воды.
Здравствуйте, Sinclair, Вы писали:
S>Это конечно есть. Просто дотнет появился вовсе не от того, что биллу некуда было деть несколько миллиардов. Оказалось, что развивать технологии, основанные на COM (и, в частности, МС VC++) уже некуда. Твое непонимание природы вещей настолько глубоко, что я даже не знаю, как его заполнить. Читай, исследуй — через некоторое время ты поймешь, что если доработать С++ в том стиле, про который ты говоришь, то получится Java.
Скорее С++0х.
Здравствуйте, Sinclair, Вы писали:
S>Это конечно есть. Просто дотнет появился вовсе не от того, что биллу некуда было деть несколько миллиардов. Оказалось, что развивать технологии, основанные на COM (и, в частности, МС VC++) уже некуда. Твое непонимание природы вещей настолько глубоко, что я даже не знаю, как его заполнить. Читай, исследуй — через некоторое время ты поймешь, что если доработать С++ в том стиле, про который ты говоришь, то получится Java.
Здравствуйте, Курилка, Вы писали:
К>Хочется от себя добавить, что постсоветское пространство это одна из монополий дельфи (у нас он распространён гораздо больше чем на западе), почему же мы не видим противостояние его и шарпа?
Так пересаживаемся потихоньку, с Дельфей на C# и Winforms. Формочки-то к базам данных какая разница на чем ваять.