2025 Muallif: Lynn Donovan | [email protected]. Oxirgi o'zgartirilgan: 2025-01-22 17:45
Virtual funktsiyalar statik bo'lolmaydi va do'st bo'lolmaydi funktsiyasi boshqa sinfdan. Ular har doim asosiy sinfda aniqlanadi va bekor qilingan olingan sinfda. Olingan sinf uchun bu majburiy emas bekor qilish (yoki ni qayta belgilang virtual funktsiya ), bu holda asosiy sinf versiyasi funktsiyasi ishlatilgan.
Bundan tashqari, virtual funktsiya va sof virtual funktsiya o'rtasidagi farq nima?
Asosiy orasidagi farq ' virtual funktsiya" va "sof virtual funktsiya "bu" virtual funktsiya ' o'z ta'rifiga ega ichida asosiy sinf va meros qilib olingan hosila sinflar uni qayta belgilaydi. The sof virtual funktsiya ta'rifi yo'q ichida asosiy sinf va barcha meros qilib olingan hosila sinflar uni qayta belgilashi kerak.
Keyinchalik savol tug'iladi: C++ da funksiyani bekor qilish nima? C++ funktsiyasini bekor qilish . Agar olingan sinf xuddi shunday belgilaydi funktsiyasi uning asosiy sinfida belgilanganidek, u sifatida tanilgan funktsiyani bekor qilish C++ da. U ish vaqti polimorfizmiga erishish uchun ishlatiladi. Bu sizga aniq amalga oshirishni ta'minlash imkonini beradi funktsiyasi Bu allaqachon uning asosiy klassi tomonidan taqdim etilgan.
Xuddi shunday, odamlar nima uchun virtual funktsiyalardan foydalanamiz?
Virtual funksiyalar bor ishlatilgan "Ish vaqti polimorfizmi" ni qo'llab-quvvatlash uchun. Qachon virtual funktsiya Asosiy sinf ko'rsatkichi yordamida chaqirilganda, kompilyator Runtime'ning qaysi versiyasida qaror qabul qiladi funktsiyasi ya'ni asosiy sinf versiyasi yoki bekor qilingan Derived Class versiyasi chaqirilishi kerak. Bu ish vaqti polimorfizmi deb ataladi.
C++ da virtual bo'lmagan funksiyani bekor qila olasizmi?
C++ da barcha sinf a'zolari funktsiyalari bor yo'q - virtual avvalboshdan. Ular mumkin qilinsin virtual yordamida virtual ichida kalit so'z funktsiyasi imzo. Yuqorida aytib o'tilganidek agar the funktsiyasi bazaviy sinfdan iborat virtual keyin funktsiyasi Derived yoki Child sinfining funktsiyasi bir xil nom bilan bekor qilishi mumkin asosiy sinf funktsiyasi.
Tavsiya:
Yig'ish va demontaj qilish o'rtasidagi farq nima?
Assambleya microsoft net-da (hisoblash) DLL ga o'xshash dasturning qurilish bloki bo'lib, lekin bajariladigan kod va odatda DLL tipi kutubxonasida topiladigan ma'lumotlarni o'z ichiga oladi, manifest deb ataladigan assambleyadagi tip kutubxonasi ma'lumotlarini tavsiflaydi. umumiy funktsiyalar, ma'lumotlar, sinflar va versiya
Funktsiyani statik qilish nima qiladi?
C tilida statik funksiya kompilyatsiya qilingan ob'ekt fayli bo'lgan tarjima birligidan tashqarida ko'rinmaydi. Boshqacha qilib aytganda, funktsiyani statik qilish uning doirasini cheklaydi. Statik funksiyani uning * ga nisbatan "xususiy" deb o'ylashingiz mumkin. c fayli (garchi bu mutlaqo to'g'ri bo'lmasa ham)
C++ da virtual funktsiya va sof virtual funktsiya o'rtasidagi farq nima?
"Virtual funktsiya" va "sof virtual funktsiya" o'rtasidagi asosiy farq shundaki, "virtual funktsiya" asosiy sinfda o'z ta'rifiga ega va meros qilib olingan hosila sinflar uni qayta belgilaydi. Sof virtual funktsiyaning asosiy sinfda ta'rifi yo'q va barcha meros qilib olingan hosila sinflar uni qayta belgilashi kerak
RequireJS-da talab qilish va aniqlash o'rtasidagi farq nima?
Require() va define() ikkalasi ham bog'liqliklarni yuklash uchun ishlatiladi. Require(): Usul darhol funksiyalarni ishga tushirish uchun ishlatiladi. define(): Usul bir nechta joylarda foydalanish uchun modullarni aniqlash uchun ishlatiladi (qayta foydalanish)
Usulni bekor qilish va usulni yashirish o'rtasidagi farq nima?
Usulni bekor qilishda, asosiy sinf mos yozuvlar o'zgaruvchisi olingan sinf ob'ektiga ishora qilganda, u olingan sinfdagi bekor qilingan usulni chaqiradi. Yashirish usulida, asosiy sinf mos yozuvlar o'zgaruvchisi olingan sinf ob'ektiga ishora qilganda, u asosiy sinfdagi yashirin usulni chaqiradi