![]() |
|
1 | |
Где можно посмотреть коды шаблонов STL?14.08.2016, 15:31. Показов 2398. Ответов 21
Метки stl шаблоны (Все метки)
Не подскажите где можно посмотреть коды шаблонов stl. То есть конкретно код реализации шаблона sort например.
0
|
|
14.08.2016, 15:31 | |
Ответы с готовыми решениями:
21
Где посмотреть исходный код STL?
Подскажите где можно посмотреть коды клавиш в таком [#75] формате ...? |
2055 / 1533 / 167
Регистрация: 14.12.2014
Сообщений: 13,326
|
|
14.08.2016, 15:40 | 2 |
![]() Решение
Лежат себе в папочке include а в какой именно подпапке - зависит от IDE/компилятора в комплекте с которым идут.
Тока смотри аккуратно -там глаза сломать и мозг вывихнуть наизнанку можно если пытаться в этом навозе что либо разобрать
1
|
![]() 8678 / 4228 / 943
Регистрация: 15.11.2014
Сообщений: 9,596
|
|
14.08.2016, 15:42 | 3 |
![]() Решение
в любой ИДЕ ПКМ на std::sort
из контекстного меню ---> "перейти к определению".
1
|
2055 / 1533 / 167
Регистрация: 14.12.2014
Сообщений: 13,326
|
|
14.08.2016, 16:24 | 6 |
0
|
Don't worry, be happy
|
|
14.08.2016, 16:52 | 7 |
Не осилил, че.
![]() Месье не понимает, что разработчики компиляторов вынуждены так писать. ![]() И при определенном опыте, всё там без проблем читается.
3
|
710 / 282 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
|
|
14.08.2016, 17:02 | 8 |
Да, с https://www.cyberforum.ru/post8889775.html и https://www.cyberforum.ru/post8891204.html не сравнить
![]()
0
|
![]() 8678 / 4228 / 943
Регистрация: 15.11.2014
Сообщений: 9,596
|
|
14.08.2016, 17:05 | 9 |
0
|
2055 / 1533 / 167
Регистрация: 14.12.2014
Сообщений: 13,326
|
|
14.08.2016, 17:19 | 11 |
К примеру VCL и FireMonkey тоже под кучу платформ ключей и т.п. НО при этом прекрасно читабельны.
Добавлено через 1 минуту Зато у меня указатели двунправленные и объекты сами из контейнеров вычищаются если их удалить. А STL так не умеет.
0
|
![]() 8678 / 4228 / 943
Регистрация: 15.11.2014
Сообщений: 9,596
|
|
14.08.2016, 17:22 | 13 |
для этого существует нотация имен.
это не объясняет факт того, что сами по себе имена зачастую нечитабельные. стандартная библиотека пишется под ключ конкретного компилятора под конкретную платформу. разные платформы и компиляторы - разные стандартные библиотеки. стандартная практика, например того же boost: вынести компиляторо-платформо-ключи зависимые вещи в отдельный конфигурационный хедер, где возможные зависимости разруливаются на дефанах препроцессора. при таком подходе удобно разруливать 100500 возможных нюансов. в тоже время, в исходном коде конкретного компонента можно использовать вполне себе человеко-читабельные имена. однако на примере как стандартной библиотеки, которая под ключ тулченйа, так и на примере кросс-платформенного boost, мы наблюдаем аццкий говнокод. я повторю свой вопрос: с чем связанна необходимость? Добавлено через 1 минуту это лишь благодаря тому, что у вас однако способность справляться с дикарями, не делает последних цивилизованными.
0
|
Don't worry, be happy
|
|
14.08.2016, 17:58 | 14 |
Угу, именно так оно и делается.
У одного компилятора на разных платформах, как правило, изменены только те самые платформо-зависимые штуки, всё остальное остается общим по мере возможностей. Вот эти самые общие штуки очень хорошо читаются. угу, поэтому для реализации зарезервированы имена, начинающиеся с двух подчеркиваний. Эти имена, лично меня, бесят больше всего, хотя при определенном уровне глазного парсера они не доставляют особых неудобств. как-правило, это сокращения, причем врядли они непонятны разработчикам, и, скорее всего, стандартизированы главнюками ![]() Красивые бусы из зубов врагов тоже не приводят к цивилизации ![]() Наблюдаем, но это не значит, что оно прям вот не читаемо. Хотя, в бусте сам черт ногу сломит. ![]() Однако, опять же, его разрабатывают, а значит и читают ![]() И че, я один такой? А раз нет, значит явление массовое. ![]()
0
|
![]() 8678 / 4228 / 943
Регистрация: 15.11.2014
Сообщений: 9,596
|
|
14.08.2016, 18:09 | 15 |
они не понятны всем, кроме непосредственных участников.
да и тем, через полгода приходится заново вдуплять. реально, такое впечатление, что они прочли Макконелла и Мартина, и сделали все с точностью наоборот. обоснования этому явлению нет. ничто не мешало в рамках плюсовой нотации. элементарно - давать вменяемые имена переменным/функциям/etc. именно что значит. именно потому, что его приходится осиливать, а не просто читать.
0
|
2055 / 1533 / 167
Регистрация: 14.12.2014
Сообщений: 13,326
|
||||||
14.08.2016, 20:09 | 20 | |||||
А я брезгую читать код с файловых помоек.
Добавлено через 1 час 21 минуту Да не то слово. Бывает что заново вдуплять не то что через пол-года, через пол-месяца приходится даже при таком подходе к именам:
0
|
14.08.2016, 20:09 | |
Помогаю со студенческими работами здесь
20
Где можно посмотреть АП ЯНДЕКСА?
Можно ли где-то посмотреть историю домена
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |