Предотвращение доступа за пределы класса

75
2

Я хотел бы ограничить класс только доступом к его членам и не более того, чтобы явно минимизировать побочные эффекты для этого класса.

В конце компилятор должен дать ошибку, если, например, что-либо из глобального пространства имен используется. Как я думаю, это невозможно на складе C++, есть ли расширение компилятора, которое делает такие проверки во время компиляции?

РЕДАКТИРОВАТЬ:

Оптимально мне нужно было бы включить все глобальные объекты пространства имен, функции и т.д. Я бы хотел разрешить использовать.

спросил(а) 2012-11-07T19:37:00+04:00 8 лет, 5 месяцев назад
1
Решение
87

Возможно, я что-то пропустил, но если вы не включите какой-либо другой заголовочный файл, у вас не будет доступа ни к чему другому, кроме вашего класса.

ответил(а) 2012-11-07T19:40:00+04:00 8 лет, 5 месяцев назад
44

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

ответил(а) 2012-11-07T19:41:00+04:00 8 лет, 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема