Точка из проекта ISO C ++ (n3290): 3.4.3.2/2 Члены пространства имен - PullRequest
3 голосов
/ 10 августа 2011

Точка из черновика ISO C ++ (n3290): 3.4.3.2/1 Члены пространства имен

Для пространства имен X и имени m набор поиска, квалифицированный для пространства имен S (X, m) определяется следующим образом: пусть S` (X, m) будет набором всех объявлений m в X и встроенным набором пространства имен X (7.3.1).Если S` (X, m) не пусто, S (X, m) равно S` (X, m) ;в противном случае S (X, m) представляет собой объединение S (N_i, m) для всех пространств имен N_i , назначенных using-директивами в X и его встроенном пространстве имен.

Может ли кто-нибудь объяснить мне этот пункт на простом английском языке, переведя его из этой математической речи?

Редактировать: ПОЖАЛУЙСТА .......... может ли кто-нибудь дать мне пример .. объясняя вышеупомянутый пункт .. ПОЖАЛУЙСТА ...

1 Ответ

2 голосов
/ 10 августа 2011

Если в пространстве имен X существует хотя бы одно объявление имени m, то эти объявления используются для набора поиска.

В противном случае все пространства имен из директив using в пространстве имен X проверяются на объявления имени m так же, как описано выше.

Или другими словами: вы проверяете пространство имен X и его директивы using рекурсивно для имени m и останавливаете рекурсию на уровне, где найдены объявления для имени m.

...