Существует ли читаемая реализация STL? [закрытый]

40
задан anon 24 January 2010 в 15:51
поделиться

8 ответов

Существует книга Библиотека стандартных шаблонов C ++ , соавтором оригинальными дизайнерами STL Stepanov & Lee (вместе с PJ Plauger и David Musser), который описывает возможную реализацию, в комплекте с кодом - Смотри http://www.amazon.co.uk/c-standard-template-library/dp/0134376331 .

27
ответ дан 27 November 2019 в 01:41
поделиться

Я использую стандартную библиотеку C ++: учебное пособие и ссылку и может настоятельно рекомендовать его. Конечно, это не то, что вы читаете прикрытую, но очень удобно. Ознакомьтесь с отзывами на Amazon.

6
ответ дан 27 November 2019 в 01:41
поделиться

Обратите внимание, что заголовки GCC STL имеют вкладку, установленную на восемь. Переконфигурируйте свой редактор или замените вкладки восемь пробелов, и он должен быть гораздо более читаемым.

6
ответ дан 27 November 2019 в 01:41
поделиться

Выделяются два ключевых точка:

  1. Никакой реализации STL не учитывается без понимания целей, обоснованных, преимуществ и ограничений самого языка и общего подхода.
  2. Большинство реализаций читаются, как только у вас будет глубокое понимание (1), потому что код является самодоступным на этих помещениях. Вы можете не понравиться форматирование , но это действительно должно быть наименьшим количеством ваших проблем.

В качестве бокового примечания вы могут имеют более успех с версией MSVC, поскольку она не пытается нацелиться несколько компиляторов . Compiler Bugs и поведение, определенное внедрением в различных тонких обстоятельствах. Поскольку эти обходные пути растут в количестве (как определено, когда вы добавляете больше компиляторов), код может быть грубое быстро.

4
ответ дан 27 November 2019 в 01:41
поделиться

Более недавнее и тщательное объяснение «правил» STL (таких как итераторы), проверить новую книгу, соавторную Степанову: http://www.elementsofprogramming.com/

Если вам нравится математика Эта книга будет возбуждать вас, потому что то, что авторы описывают, по сути, является алгебре вычислений. Сайт включает в себя образец главы.

3
ответ дан 27 November 2019 в 01:41
поделиться

Ну, STL довольно сложно, поэтому я думаю, что здесь есть определенное количество существенной сложности. Неудивительно, что на первый взгляд может показаться небольшой недоумение.

Это сказано, что, возможно, вы могли бы проверить STLPORT Borland и посмотреть, если вы обнаружите, что легче прочитать.

2
ответ дан 27 November 2019 в 01:41
поделиться

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

2
ответ дан 27 November 2019 в 01:41
поделиться

В коде вы можете сделать любой ат. С белыми пробелами. Однако с некоторыми браузерами, если вы пишете некоторое вроде:

<a href="http://example.com">foobar
</a>

Новая строка может иметь (мало) incidenx на том, как отображается ваша ссылка, особенно в «активном» статусе.

-121--3909841-

Не отображается, что вы создаете новые узлы, просто повторно используете существующие. DFS требует какой-то стек (либо стек вызова, либо ваш собственный стек). Где это?

-121--4746418-

RDESTL обеспечивает «небольшое подмножество функций STL» (но также имеет некоторые дополнения). Я лично нашел код вполне поучительно и проще навигации, чем крупные парни, такие как STLPORT или реализация Dinkumware, которая отправляется на VC ++.

3
ответ дан 27 November 2019 в 01:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: