Re[55]: C+ vs C#
От: alexeiz  
Дата: 13.02.06 11:17
Оценка: +2 -1
Здравствуйте, Дарней, Вы писали:

Д>Здравствуйте, alexeiz, Вы писали:


A>>Меня уже достали твои общие слова. Ты отрицаешь наличие высокоуровневых возможностей в C++?


Д>А меня достал ты со своей уверенностю в том, что ты здесь лучше всех знаешь С++.


Да, я вижу поголовное плохое знание С++. Это большая проблема.

Д>Там нет:

Д>1. Стандарта на массивы и строковый тип. std::vector и std::string на эту роль не подходят, потому что все равно авторы каждой библиотеки изобретают собственные велосипеды.

В этом виноваты авторы каждой библиотеки. Стандарт на то и нужен, чтобы перестать изобретать велосипеды. Начни использовать стандартные средства. Стандарт на стоковой тип есть.

Д>2. Стандарта на политику обработки ошибок


Не меньше, чем в других языках. Исключения поддерживаются на нужном уровне.

Д>3. Нормальной возможности использовать функциональные типы (заменители на килобайтах шаблонов и макросов — не считаются)


Это камень предкновения? Программируй на функциональном языке.

Д>4. Замыканий


Функторы.

Д>5. Уверенности в том, что безобидный на вид код не окажется злостным UB


Не замечено. Давай ты приведёшь пример well-formed C++ кода, использующего высокоуровневые абстракции, в котором тебя ждут упомянутые тобой проблемы.

Д>Там есть:

Д>1. Хреновая поддержка стандарта в распространенных компиляторах

К языку не относится. Не нужно путать язык и его реализации. К тому же в распостранённых компиляторах поддержка стандарта уже oчень хорошая.

Д>2. Необходимость писать килограммы оберток каждый раз, когда тебе нужно использовать чужую библиотеку (см п.1 и п.2)


Проблемы библиотек. Объясни мне, как херовые сторонние библиотеки вдруг стали проблемой языка?

Д>3. Заботливо разложенные на каждом шагу грабли, в качестве ярких примеров — vector<bool>, auto_ptr в котейнерах, и прочие радости.


Эти грабли хорошо изветсны и никакой опасности не представляют. Читай документацию, что называется. В auto_ptr написано, как он должен использоваться. Ты можешь положить его в контейнер, только если не прочтёшь его документацию. Я уже не говорю о том, что компилятор тебе по рукам даст.

vector<bool> настолько искуственный пример, что если тебе не сказали о его проблемах, ты бы даже и не подозревал.

---
Все твои "аргументы" даже и на йоту не ближе к тому, чтобы показать, что на С++ нельзя программировать на высоком уровне абстракции.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.