В С++ є операція::, яка в середині блоку дає доступ до глобальної змінної (тільки до глобальної) при наявності локальної «тезки». Наприклад, i=::i; Локальна i присвоює значення глобальної i.
Використаємо цю операцію для побудови модифікації ch, яка виключає призначення початкового значення mn в тілі функції. Розглянемо бібліотечну функцію chmn, в котрій початкове значення mn присвоюється від однойменної глобальної змінної: static double mn=::mn;
Для її використання спочатку оголошують глобальну змінну mn та ініціалізують її до першого виклику chmn. Функція записана у файлі SUBPROG\ chmn.cpp та оформлена як бібліотечна у списку roll.h.
/*файл SUBPROG\chmn.cpp – Генератор випадкових чисел від -1 до 1
з використанням глоб. змінною mn*/