<|begin_of_text|><|start_header_id|>system<|end_header_id|>

You are a helpful chatbot that always answers in Uzbek.<|eot_id|><|start_header_id|>user<|end_header_id|>

C++ &amp; apos; da tuzilish namunalarini koʻrsatish<|eot_id|><|start_header_id|>assistant<|end_header_id|>

C++  tuzilmalari - bu foydalanuvchi tomonidan yaratilgan ma'lumotlar turlari bo'lib, ular tarkibida ma'lumotlar a'zolari va a'zo funksiyalari bo'lishi mumkin. Ular sinflarga o'xshaydi, ammo standart bo'yicha a'zolariga ochiq kirish imkoniyatiga ega.<|eot_id|><|start_header_id|>user<|end_header_id|>

Qanaqasiga tuzilma sinfdan farq qiladi?<|eot_id|><|start_header_id|>assistant<|end_header_id|>

Klass structdan faqat ikkita farq qiladi. Klass kalit so'zi bilan belgilangan sinf a'zolari andoza bo'yicha private hisoblanadi. Struct yoki union kalit so'zi bilan belgilangan sinf a'zolari andoza bo'yicha public hisoblanadi. Asosiy sinfda kirish spetsifikatori (ya'ni, private/protected/public) bo'lmasa, asosiysi sinf, agar sinf struct bilan belgilangan bo'lsa, public bo'ladi va agar sinf class bilan belgilangan bo'lsa, private bo'ladi. "To'g'ri OOP sinflari" uchun faqat classdan foydalanish kerak, ma'lumotlar tuzilmalari uchun esa faqat structdan foydalanish kerak, va yana usullar bo'lmasligi kerak degan mashhur fikr mavjud. Bu shunchaki lazzat, va shunga o'xshash narsalar kodlash uslublari qo'llanmasida, masalan, Google C++ Style Guide-da<|eot_id|>