Har bir sinfda standart C++ konstruktori bormi?
Har bir sinfda standart C++ konstruktori bormi?

Video: Har bir sinfda standart C++ konstruktori bormi?

Video: Har bir sinfda standart C++ konstruktori bormi?
Video: Полный курс TypeScript за час | Тайпскрипт для начинающих 2024, Qadam tashlamoq
Anonim

Standart konstruktorlar ( C++ faqat)

A standart konstruktor hisoblanadi a konstruktor bu ham ega parametrlari yo'q, yoki agar u ega parametrlar, hammasi parametrlari standartga ega qiymatlar. Agar foydalanuvchi tomonidan aniqlanmagan bo'lsa konstruktor a uchun mavjud sinf A va bitta hisoblanadi kerak bo'lsa, kompilyator bilvosita a ni e'lon qiladi standart parametrsiz konstruktor A::A().

Xuddi shunday, sizga standart konstruktor C++ kerakmi?

Kompilyator bilvosita e'lon qiladi standart konstruktor agar dasturchi tomonidan taqdim etilmagan bo'lsa, uni kiritilganda aniqlaydi kerak . Kompilyator aniqlangan standart konstruktor hisoblanadi talab qilinadi uchun qil sinfning ichki qismlarini muayyan ishga tushirish. Kompilyator qo'ng'iroq qilish uchun kodni kiritishi kerak standart konstruktorlar asosiy sinf/ko'milgan ob'ekt.

Shuni ham bilingki, sinfda C++ konstruktori bo'lishi mumkinmi? Agar sizning sinfda konstruktor yo'q , C++ bo'ladi avtomatik ravishda umumiy standart yaratish konstruktor Siz uchun. Bu ba'zan yashirin deb ataladi konstruktor (yoki bilvosita yaratilgan konstruktor ).

Bundan tashqari, har bir sinfning standart konstruktori bormi?

Ha hammasi sinflar Biz javada yaratadigan narsa paydo bo'ladi standart konstruktor parametrlarsiz. Lekin biz parametrlashtirilganni yaratishimiz bilanoq konstruktor bu standart konstruktor olish olib tashlandi.

C++ da standart konstruktorni qanday chaqirish mumkin?

Konstruktor sinfning o'zi bilan bir xil nomga ega. Konstruktorlar Qaytish turi yo'q. A konstruktor ob'ekt yaratilganda avtomatik ravishda chaqiriladi. Agar biz aniqlamasak a konstruktor , C++ kompilyator a hosil qiladi standart konstruktor biz uchun (parametrlarni kutmaydi va bo'sh tanaga ega).