Re[55]: C+ vs C#
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 13.02.06 10:35
Оценка:
Здравствуйте, Дарней, Вы писали:

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


Изобретали, я бы сказал. Многие библиотеки (например, Qt, wxWidgets, ACE) начали развиваться еще до появления данных классов и до их стандартизации. Сейчас, к тому же, идет процесс добавления поддержки стандартных классов во многие старые библиотеки. В частности, Qt нормально дружит с std::string.

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


А он вообще возможен в мультипарадигменном языке.
Если же речь идет об исключениях, то есть std::exception, а все, что std::exception не поддерживает -- см.п.1.

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


+1

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


+1

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


+1

Д>Там есть:

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

В распространенных?

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


Уже практически не нужно.

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


auto_ptr в контейнера -- это элементарное не знание языка.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.