Компиляторы тоже путаются в именах
Это продолжение темы начатой в статье Важны ли компилятору имена, и продолженой в Ночью все кошки серы, а using'и одинаковы, и если вам нужна полная картина, как компилятор превращает текст в программу, то без понимания поиска имён (name lookup) дальше двигаться уже не получится. Имена в тексте исходника это просто у...
Погода сигнала
Рост
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Это продолжение темы начатой в статье Важны ли компилятору имена, и продолженой в Ночью все кошки серы, а using'и одинаковы, и если вам нужна полная картина, как компилятор превращает текст в программу, то без понимания поиска имён (name lookup) дальше двигаться уже не получится. Имена в тексте исходника это просто удобные ярлыки для людей: переменные, функции, типы. Но для компилятора имя являеются точкой входа в довольно сложный алгоритм, который должен однозначно определить, что именно вы имели в виду. И вот здесь начинается самое интересное: одинаково написанное имя в разных контекстах может означать совершенно разные вещи, а иногда даже не означать ничего вовсе, в зависимости от того, где и как оно используется. C++ в этом месте особенно коварен. Язык рос десятилетиями, и правила поиска имён эволюционировали вместе с ним: добавлялись пространства имён, шаблоны, ADL, двухфазный поиск. Всё это не просто усложнило модель, оно сделало её местами неинтуитивной даже для опытных разработчиков, добавим сюда еще, что разные компиляторы исторически реализовывали эти правила (по-своему) по-разному, и часть этих различий до сих пор всплывает в коде. Не нужно воспринимать компилятор как чёрный ящик, хотя порою поиск имён действительно выглядит как магия, но если разобрать его на отдельные шаги, то становится видно, что за этой «магией» стоит вполне строгая (хоть и исторически нагруженная) система правил. Попробую о ней рассказать. Какой-то странный, этот ваш с++
Карта темы
Понять тему за минуту
Быстрый вход в историю: почему она важна сейчас, кто в ней участвует и куда идти дальше за контекстом.
Почему это важно сейчас
Страницы сущностей
Продолжить следить за темой
Переходите к связанным материалам, страницам сущностей и активным линиям сюжета.
[Перевод] Что такое качественный инжиниринг? Ключ к созданию более качественных, быстрых и надёжных продуктов
Инжиниринг качества (Quality Engineering) — это современный подход к созданию надёжных и востребованных продуктов, основанный на проактивных методах, автоматизации и анализе мет...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
Домашняя кластер-лаба с капелькой колхоза
Привет Хабр! Это небольшой рассказ о моей домашней лаборатории на которой я обучаюсь различным решениям необходимых DevOps‑инженеру. Для начала пробежимся мини‑обзором оборудова...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
[Перевод] Дженсен Хуанг, CEO NVIDIA: индустрия разработки софта станет полностью token-driven
На конференции Morgan Stanley Дженсен Хуанг заявил, что индустрия разработки ПО вскоре станет полностью token-driven. По его словам, каждая компания, разрабатывающая ПО, преврат...
Погода сигнала
Сейчас это одна из самых сильных точек сигнала: тема тянет поиск, внимание или редакционный приоритет.
Почему сейчас
Тема уже растёт в поиске: импульс 975 и 27 внешнего сигнала.
Работа с автотестами внутри TMS
Сейчас TMS на рынке условно можно разделить на два подхода. Первый — классический. Система работает как слой управления ручным тестированием: хранит тест-кейсы, формирует прогон...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
Claude Mythos, Java 26 и пещерный человек с 16 000 звёзд на GitHub
Девятый выпуск еженедельных IT-новостей от OpenIDE. Милла Йовович выложила свой проект в open-source, Claude Code нашел баг в Linux, которому 23 года, Anthropic показали Claude ...
Погода сигнала
Сейчас это одна из самых сильных точек сигнала: тема тянет поиск, внимание или редакционный приоритет.
Почему сейчас
Тема уже растёт в поиске: импульс 975 и 27 внешнего сигнала.
Как я собрал автономную AI-новостную систему за полтора месяца
Автор: Алексей КравцовПолтора месяца назад у меня было семь воркфлоу в n8n для новостного пайплайна. Каждый делал что-то своё. На бумаге красиво. На практике — постоянные затыки...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
Похожие статьи
Еще материалы, которые пересекаются по тегам, источнику или категории.
[Перевод] Что такое качественный инжиниринг? Ключ к созданию более качественных, быстрых и надёжных продуктов
Инжиниринг качества (Quality Engineering) — это современный подход к созданию надёжных и востребованных продуктов, основанный на проактивных методах, автоматизации и анализе мет...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
Домашняя кластер-лаба с капелькой колхоза
Привет Хабр! Это небольшой рассказ о моей домашней лаборатории на которой я обучаюсь различным решениям необходимых DevOps‑инженеру. Для начала пробежимся мини‑обзором оборудова...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
[Перевод] Дженсен Хуанг, CEO NVIDIA: индустрия разработки софта станет полностью token-driven
На конференции Morgan Stanley Дженсен Хуанг заявил, что индустрия разработки ПО вскоре станет полностью token-driven. По его словам, каждая компания, разрабатывающая ПО, преврат...
Погода сигнала
Сейчас это одна из самых сильных точек сигнала: тема тянет поиск, внимание или редакционный приоритет.
Почему сейчас
Тема уже растёт в поиске: импульс 975 и 27 внешнего сигнала.
Работа с автотестами внутри TMS
Сейчас TMS на рынке условно можно разделить на два подхода. Первый — классический. Система работает как слой управления ручным тестированием: хранит тест-кейсы, формирует прогон...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
Еще материалы от Habr
Свежие публикации и продолжение темы от той же редакции.
[Перевод] Что такое качественный инжиниринг? Ключ к созданию более качественных, быстрых и надёжных продуктов
Инжиниринг качества (Quality Engineering) — это современный подход к созданию надёжных и востребованных продуктов, основанный на проактивных методах, автоматизации и анализе мет...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
Домашняя кластер-лаба с капелькой колхоза
Привет Хабр! Это небольшой рассказ о моей домашней лаборатории на которой я обучаюсь различным решениям необходимых DevOps‑инженеру. Для начала пробежимся мини‑обзором оборудова...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.
[Перевод] Дженсен Хуанг, CEO NVIDIA: индустрия разработки софта станет полностью token-driven
На конференции Morgan Stanley Дженсен Хуанг заявил, что индустрия разработки ПО вскоре станет полностью token-driven. По его словам, каждая компания, разрабатывающая ПО, преврат...
Погода сигнала
Сейчас это одна из самых сильных точек сигнала: тема тянет поиск, внимание или редакционный приоритет.
Почему сейчас
Тема уже растёт в поиске: импульс 975 и 27 внешнего сигнала.
Работа с автотестами внутри TMS
Сейчас TMS на рынке условно можно разделить на два подхода. Первый — классический. Система работает как слой управления ручным тестированием: хранит тест-кейсы, формирует прогон...
Погода сигнала
Импульс быстро усиливается, поэтому это хороший ранний вход в тему.
Почему сейчас
Это один из самых свежих сюжетов, у которого ещё только формируется продолжение.