Skip to content

Добавить возможность контролировать обращение к глобальным переменным в функциях и методах классов #626

@rsashka

Description

@rsashka

Добавить возможность ручного контроля доступа к глобальным переменным внутри определения функций или метода класса, например, с помощью ключевого слова using

  • using global var1, var2; обращение к любой другой глобальной переменной, кроме var1 и var2 будет приводить к ошибке времени компиляции
  • а запрет к обращению к любым глобальным переменным using global _; превратит текущую функцию почти в чистую.

По сути, это реализация требования 5G. Scope of Variables. из REQUIREMENTS FOR HIGH ORDER COMPUTER PROGRAMMING LANGUAGES "STEELMAN" June 1978

  • Такое дополнение будет полезно для создания чистых функций в С++ на уровне синтаксиса и с проверкой во время компиляции.
  • Явное перечисление глобальных переменных, к которым планируется доступ внутри текущей функции дает более полное понимание намерений программиста при реализации алгоритма.
  • Явное перечисление глобальных переменных с которыми планируется работать, позволит во время компиляции контролировать потенциальные ошибки из-за возможного затенения имен между глобальными и локальными переменными.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions