• 1.9-dastur. Const_cast operatoridan foydalanish.
  • Tiplarni dinamik tarzda aniqlash. Reja: Tiplarni dinamik tarzda aniqlash




    Download 0,81 Mb.
    bet10/143
    Sana20.07.2024
    Hajmi0,81 Mb.
    #268096
    1   ...   6   7   8   9   10   11   12   13   ...   143
    Bog'liq
    Tiplarni dinamik tarzda-fayllar.org

    const_cast operatori. Const_cast operatori const va/yoki volatile o‘zgartirgichlarni qayta aniqlash uchun xizmat qiladi.
    Const_cast operatori const va / yoki volatile o‘zgartirgichlarni ochiq qayta aniqlash/joriy qilish uchun ishlatiladi. const yoki volatile ning atrubutlariga istesno tariqasida, yangi tipi joriy tipi bilan mos bo‘lishi kerak. Ko‘pincha const_cast
    operatori const atributini olib tashlash uchun ishlatiladi. Uning umumiy formati quyidagicha:

    const_cast (expr)


    Bu yerda type elementi yangi tipga almatirish tipini o‘rnatadi, expr elementi esa yangi tipga tipi almatirilishi kerak bo‘lgan o‘zgaruvchi(ifoda)ni bildiradi.


    1.9-dastur. Const_cast operatoridan foydalanish.

    #include "stdafx.h"


    #include #include

    using namespace std;


    void f (const int *p){ int *v;
    v = const_cast (p); // const-oʻzgaruvchini qayta almashtirish.
    *v = 1980; // yangi qiymat berish, modifikatsiyalash
    }
    int main(){

    int x = 2004;


    cout <<" f() funksiya chaqirilmasdan oldin x ni qiymati: " << x<< endl; f (&x);
    cout <<" f() funksiya chaqirilgandan soʻng x ni qiymati: " << x<< endl; system("pause");
    return 0;
    }


    1.9 – dastur natijasi. Output


    f() funksiya chaqirilmasdan oldin x ni qiymati: 2004


    f() funksiya chaqirilgandan soʻng x ni qiymati: 1980

    Ko‘rib turganingizdek, x o‘zgaruvchi qabul qilgan parametr const ko‘rsatgichi sifatida o‘rnatildi va f() funksiyasi tomonidan o‘zgartirilgan.

    Const atributini o‘chirish uchun const_cast operatoridan foydalanish xavfli darajadagi vosita ekanligini alohida taʻkidlash lozim. Shuning uchun, juda diqqat bilan foydalanishni tavsiya qilamiz.


    Faqat const_cast operatori const atributini o‘chirishi mumkinligini bilib oldingiz. Boshqa so‘zlar bilan aytganda, na dynamic_cast, static_cast, yoki reinterpret_cast obʻyekt const atributini o‘zgartirish uchun foydalanish mumkin emas.

    Download 0,81 Mb.
    1   ...   6   7   8   9   10   11   12   13   ...   143




    Download 0,81 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Tiplarni dinamik tarzda aniqlash. Reja: Tiplarni dinamik tarzda aniqlash

    Download 0,81 Mb.