Здравствуйте, Qbit86, Вы писали:
Q>Не только Boost, но и STL. В .NET, когда мне надо уточнить поведение стандартного класса, я вбиваю в поисковый запрос «coreclr SomeClass» или «corefx SomeClass». Обычно по первой ссылке — исходник класса на GitHub в майкрософтовском репозитории. Я читаю его прямо в браузере без всяких навигаций, и о чудо — понимаю! С заголовочными файлами Стандартной Библиотеки Шаблонов такое не прокатывает, там по крупицам надо выдирать смысл из мешанины type_trait'ов, typedef'ов и прочего итераторного шлака.
Ну это же не ради удовольствия сделано, а ради описанного в предпоследнем абзаце здесь:
http://www.rsdn.org/forum/flame.comp/6655333.1
Так-то можно и на С++ писать в стиле C#, оно же "С с классами". Отчего же базовые библиотеки редко пишут в такой манере?
Хотя, если заглянуть в некоторые потроха Буста (в тот же asio), где идёт реализация под конкретные сетевые технологии, то там обычный такой ООП-код.
Q>Спасибо, такой фичи не надо. Нужна такая фича, чтобы варианты проверялись/энфорсились в момент чтения/написания обобщённого кода, а не когда-то потом при инстанцировании пользователем в непонятном месте.
Тогда это будет не совсем обобщённый код, а так, обманка, типа генериков. Т.е. прибитие гвоздями к конкретным интерфейсам.