Почему Visual Express 2008 не выполняет автоматическое заполнение std :: system - PullRequest
2 голосов
/ 01 августа 2011

Почему Visual Express 2008 не дает мне возможность system при наборе std::, хотя я слышу, что это часть <cstdlib>?

1 Ответ

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

Возможно, что система определена в пространстве имен верхнего уровня и включена в std только с помощью оператора using. Таким образом, он не будет находиться в пространстве имен std, а будет просто доступен через него.

Существует только одно верхнее или глобальное пространство имен ::. Так что :: global будет той функцией. Если бы они реализовали функцию как

void system(...);
namespace std { using ::system; }

что бы объяснить это поведение. Системная подпись может быть неправильной, не проверял.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...