Re[11]: boost - вон из профессии
От: Kluev  
Дата: 28.06.08 09:31
Оценка: -2
Здравствуйте, jazzer, Вы писали:

E>>STL вообще достаточно специфичен -- та его часть, которая касается контейнеров, вообще не имеет себе равных, имхо. Это именно то, что нужно было для C++. Но, с другой стороны, std::string и iostream далеко не самые удачные примеры. И более удобный класс строк, например, не помешал бы. Да только где он?


J>Так может, он и не нужен?

J>Та эволюция, которую я наблюдаю, сводится к тому, чтобы предоставить 1) разнообразные контейнеры для разных вариантов использования, и 2) разнообразные алгоритмы для работы с этими контейнерами. Т.е. контейнер, параметризованный char/wchar_t, и представляет собой строку, а алгоритмы, соответственно, будут осуществлять необходимые операции, типа поиска по регэкспам, выделение подстрок и т.п.
J>А один класс, который бы включал в себя все на свете, не особо и нужен получается.

Классы которые включают в себя всё не нужны. Нужны просто нормальные классы.
Те что мы имеем в стандартной библиотеке нормальными назвать никак нельзя.
Например iostream. Ежу понятно, что если есть ввод и вывод, то класс должен уметь работать в симметричном режиме:
string a = "one two three";
double b = 3.14;
int c = 1;

stringstream ss;
ss << a << b << c;
ss >> a >> b >> c;

Глянув в исходники обнаруживаем, что такой возможности нет в принципе. Спрашивается какие вообще алгоритмы можно построить вокруг этого "класса"? Имхо, такие вещи нужно просто выкидывать из стандартной библиотеки и менять на нормальные вменяемые классы.
Да и вообще, стандартная библиотека С++ неудачный проект с самого рождения, не вызывающий ни одной положительной эмоции.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.