Програмування С, С++теорія та практика (частина 2)
2.10.7 Маніпулятори
Маніпулятори є функціями (знаходяться в іотапір.к), які можна включати у низку послідовних операцій поміщення та вилучення. Це зручний спосіб керування прапорцями потоку. Однак застосування
маніпуляторів не обмежується модифікаціями формату 1/0. За виключенням зеїм, зміни, внесені маніпуляторами, зберігаються до наступної модифікації.
Маніпулятори, що не потребують застосування аргументів, називаються простими (таблиця 2.8).
|
Таблиця 2.8. Прості маніпулятори
Наступний фрагмент використовує маніпулятор для виведення значення у шістнадцятирічній та десятковій формі: ипзідпей ■=12345; сои£<< "Іп Ьехайесіта1 ■=="<<Ьех<<^<'\п '; сои£<< "Іп йесіта1 ■=="<<йес<<^<'\п '; |
Аналогічно застосовуються маніпулятори й для операцій введення:
сои£ << "Еп'Ьег £Ье ■а1ие іп Ьех: " ; сіп>>Ьеx>>V ;
сои^<<"Уа1ие іп йесіта1 == " << йес <<■;
Наступні маніпулятори використовуються лише з параметрами ( таблиця 2.9):
Маніпулятори-функції потоків виведення повертають значення типу озігеат&, іншими словами посилання на об'єкт озігеат. Можна описати й власні маніпулятори, визначивши функцію такого посилального типу. Наприклад, маніпулятор дзвоника для потоку виведення може бути таким:
|
Таблиця 2.9. Маніпулятори з параметрами
оз£геат& Ье11 (оз^геат&) { |
ге^игп оз << "\а"
}
Тоді використання в рядку виведення буде таким: сои£ << Ье11<<"Біпд !!! "
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
