SlideShare a Scribd company logo
1 of 33
1
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
URGANCH FILIALI
DASTURLASH2
OLE, MFC texnologiyalari. Ko’p oynali
muhitlar bilan ishlash. Visual C++ muhitida
ko’p oynali muhit yaratish.
13
MAVZU
Noma’lum tiplar va
noma’lum nomlar fazosi.
1
Ma’ruza
Ma’ruzachi
Ass. Yusupova J
DASTURLASH 2
Mа’ruza rejasi
2
Turdan turga o’tkazish operatorlari;
4
1.Namespace – nomlar fasozi nima?
1
1.Nomlar fazosida xatoliklar;
2
Ichma – ich joylashgan nomlar fazosi;
3
Xulosa.
5
DASTURLASH 2
Namespace – nomlar fasozi
3
• Namespace – bir-xil identifikatorlarni bitta dasturda
ishlatish muammosini hal qiladi.
• Namespace ni umumiy strukturasi quyidagicha:
• namespace <nom>
{
• ………
• }
DASTURLASH 2 4
Umimiy nomlar sohasidan foydalanish
DASTURLASH 1 5
Ikita nomlar fazosida bir
xil nomli o’zgaruvchilarni
ishlatish mumkin emas
Nomlar fazosida xatoliklar:
DASTURLASH 1 6
Ammo bu o’zgaruvchilar
dasturda e’lon qilinadigan
bo’lsa xatolik bo’lmaydi.
Nomlar fazosida xatoliklar:
DASTURLASH 1 7
O’zgaruvchilar kabi
funksiyalar ham bir xil
nomga ega bo’lmasligi
kerak
Nomlar fazosida xatoliklar:
DASTURLASH 1 8
Nomlar fazosida xatoliklar:
DASTURLASH 2 9
Ichma – ich joylashgan nomlar fazosi
DASTURLASH 1 10
Nomlar fazosida sinflar
DASTURLASH 1 11
Nomlar fazosida sinflar
DASTURLASH 1 12
DASTURLASH 1
Natija:
13
DASTURLASH 1 14
DASTURLASH 2
Masala:
15
“talaba” nomli nomlar fazosi va unda
“Talaba” classini yarating. Class
maydonlari: Familiyasi, ismi, kursi,
baholari, stipendiyasi. Class
komponentalarini inkapsulyastiyalash,
konstruktorlar va class metodlarini ishlab
chiqing. Obyektlar massivini yarating va
ular ustida qidirish, saralash, o’zgartirish
amallarini bajaring.
DASTURLASH 2 16
DASTURLASH 2 17
DASTURLASH 2 18
DASTURLASH 2 19
DASTURLASH 2
Natija:
20
DASTURLASH 2
Natija:
21
DASTURLASH 2 22
Aniq va aniq bo’lmagan o’zgartirishlar
C ++ aniq va noma’lum ma'lumotlar turini
o'zgartirishni farqlaydi. Ma'lum bo'lmagan turdagi
ma'lumotlar konversiyasini C ++ kompilyatori amalga
oshiradi, lekin dasturchining o'zi aniq ma'lumotlarni
aylantirishni amalga oshiradi. Ma'lumotlar turini
o'zgartirish to'g'risida quyidagi jadvalda keltirilgan.
Jadvalda bo'linish operatsiyasi ko'rib chiqilgan.
int ni qabul qiladigan butun son turi sifatida,
float yoki double haqiqiy ma'lumotlar turi suzuvchi
bo'ladi.
DASTURLASH 2 23
Turdan turga o’tkazishning aniq va noaniq
usullari
x y Bo’lish natijasi Misol
Bo’linuvchi Bo’luvchi Vaqtincha x = 15 y = 2
Int int int 15/2=7
int float float 15/2=7.5
float int float 15/2=7.5
DASTURLASH 2 24
Ma'lumot turlarini aniq o'zgartirish usuli:
• float (15) / 2 // natija 7.5, 15 raqami haqiqiy ma'lumot
turiga o'zgartiriladi.
• double (15) / 2 // natija 7.5 - bir xil !!!
• C ++ shuningdek, bir tomonlama(Unar) operatsiyani
bajaradi:
• static_cast </ * ma'lumotlar turi * /> (/ * o'zgaruvchi
yoki son* /)
• misol: static_cast <float> (15) / 2, natija 7.5
• int ret=15;
• static_cast<float>(ret)/2 //Natija 7.5
DASTURLASH 2
Ma'lumot turlarini aniq o'zgartirish usuli:
25
DASTURLASH 2 26
Turdan turga o’tkazish operatorlari
• Ba'zi turdan-turga o’tkazuvchi operatorlar faqat C ++ da
qo'llaniladi. Ushbu operatorlar C tili turini tavsiflovchi
noaniqlik va xato imkoniyatlarini yo'q qiladi, bu operatorlar
quyida keltirilgan.
• dynamic_cast polimorf turlarini o'zgartirish uchun
ishlatiladi.
• static_cast polimorf bo'lmagan turlarni o'zgartirish
uchun ishlatiladi.
DASTURLASH 2 27
DASTURLASH 2
Natija:
28
DASTURLASH 2 29
static_cast - C ++ da ma'lumotlarning bir xil
turini o’tkazish
static_cast operatsiyasi faqat C ++ da mavjud. static_cast-ni bir
turni ikkinchisiga o'tkazish uchun ishlatish mumkin, ammo u noto'g'ri
konversiyani amalga oshirish uchun ishlatilmaydi, masalan, qiymatni
ko'rsatgichga yoki aksincha. C-uslubidagi quyishdan ko'ra static_cast
operatsiyasidan foydalanish tavsiya etiladi, chunki static_cast yaroqsiz
kastlarni cheklaydi va shuning uchun xavfsizroqdir.
Qat'iy aytganda, static_cast operatsiyasi - bu ishlash uchun
ma'lumotlar turini aniq ko'rsatishingiz kerak bo'lgan funktsiya
shablonidir, ya'ni shablon parametrini belgilashingiz kerak.
DASTURLASH 2 30
Funksiyalarni qayta yuklash
DASTURLASH 2 31
DASTURLASH 2
Natija:
32
DASTURLASH 2 33
E’tiboringiz uchun
rahmat
Savollar ?

More Related Content

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

1-mavzu_Dasturlash II.ppt

  • 1. 1 MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI URGANCH FILIALI DASTURLASH2 OLE, MFC texnologiyalari. Ko’p oynali muhitlar bilan ishlash. Visual C++ muhitida ko’p oynali muhit yaratish. 13 MAVZU Noma’lum tiplar va noma’lum nomlar fazosi. 1 Ma’ruza Ma’ruzachi Ass. Yusupova J
  • 2. DASTURLASH 2 Mа’ruza rejasi 2 Turdan turga o’tkazish operatorlari; 4 1.Namespace – nomlar fasozi nima? 1 1.Nomlar fazosida xatoliklar; 2 Ichma – ich joylashgan nomlar fazosi; 3 Xulosa. 5
  • 3. DASTURLASH 2 Namespace – nomlar fasozi 3 • Namespace – bir-xil identifikatorlarni bitta dasturda ishlatish muammosini hal qiladi. • Namespace ni umumiy strukturasi quyidagicha: • namespace <nom> { • ……… • }
  • 4. DASTURLASH 2 4 Umimiy nomlar sohasidan foydalanish
  • 5. DASTURLASH 1 5 Ikita nomlar fazosida bir xil nomli o’zgaruvchilarni ishlatish mumkin emas Nomlar fazosida xatoliklar:
  • 6. DASTURLASH 1 6 Ammo bu o’zgaruvchilar dasturda e’lon qilinadigan bo’lsa xatolik bo’lmaydi. Nomlar fazosida xatoliklar:
  • 7. DASTURLASH 1 7 O’zgaruvchilar kabi funksiyalar ham bir xil nomga ega bo’lmasligi kerak Nomlar fazosida xatoliklar:
  • 8. DASTURLASH 1 8 Nomlar fazosida xatoliklar:
  • 9. DASTURLASH 2 9 Ichma – ich joylashgan nomlar fazosi
  • 10. DASTURLASH 1 10 Nomlar fazosida sinflar
  • 11. DASTURLASH 1 11 Nomlar fazosida sinflar
  • 15. DASTURLASH 2 Masala: 15 “talaba” nomli nomlar fazosi va unda “Talaba” classini yarating. Class maydonlari: Familiyasi, ismi, kursi, baholari, stipendiyasi. Class komponentalarini inkapsulyastiyalash, konstruktorlar va class metodlarini ishlab chiqing. Obyektlar massivini yarating va ular ustida qidirish, saralash, o’zgartirish amallarini bajaring.
  • 22. DASTURLASH 2 22 Aniq va aniq bo’lmagan o’zgartirishlar C ++ aniq va noma’lum ma'lumotlar turini o'zgartirishni farqlaydi. Ma'lum bo'lmagan turdagi ma'lumotlar konversiyasini C ++ kompilyatori amalga oshiradi, lekin dasturchining o'zi aniq ma'lumotlarni aylantirishni amalga oshiradi. Ma'lumotlar turini o'zgartirish to'g'risida quyidagi jadvalda keltirilgan. Jadvalda bo'linish operatsiyasi ko'rib chiqilgan. int ni qabul qiladigan butun son turi sifatida, float yoki double haqiqiy ma'lumotlar turi suzuvchi bo'ladi.
  • 23. DASTURLASH 2 23 Turdan turga o’tkazishning aniq va noaniq usullari x y Bo’lish natijasi Misol Bo’linuvchi Bo’luvchi Vaqtincha x = 15 y = 2 Int int int 15/2=7 int float float 15/2=7.5 float int float 15/2=7.5
  • 24. DASTURLASH 2 24 Ma'lumot turlarini aniq o'zgartirish usuli: • float (15) / 2 // natija 7.5, 15 raqami haqiqiy ma'lumot turiga o'zgartiriladi. • double (15) / 2 // natija 7.5 - bir xil !!! • C ++ shuningdek, bir tomonlama(Unar) operatsiyani bajaradi: • static_cast </ * ma'lumotlar turi * /> (/ * o'zgaruvchi yoki son* /) • misol: static_cast <float> (15) / 2, natija 7.5 • int ret=15; • static_cast<float>(ret)/2 //Natija 7.5
  • 25. DASTURLASH 2 Ma'lumot turlarini aniq o'zgartirish usuli: 25
  • 26. DASTURLASH 2 26 Turdan turga o’tkazish operatorlari • Ba'zi turdan-turga o’tkazuvchi operatorlar faqat C ++ da qo'llaniladi. Ushbu operatorlar C tili turini tavsiflovchi noaniqlik va xato imkoniyatlarini yo'q qiladi, bu operatorlar quyida keltirilgan. • dynamic_cast polimorf turlarini o'zgartirish uchun ishlatiladi. • static_cast polimorf bo'lmagan turlarni o'zgartirish uchun ishlatiladi.
  • 29. DASTURLASH 2 29 static_cast - C ++ da ma'lumotlarning bir xil turini o’tkazish static_cast operatsiyasi faqat C ++ da mavjud. static_cast-ni bir turni ikkinchisiga o'tkazish uchun ishlatish mumkin, ammo u noto'g'ri konversiyani amalga oshirish uchun ishlatilmaydi, masalan, qiymatni ko'rsatgichga yoki aksincha. C-uslubidagi quyishdan ko'ra static_cast operatsiyasidan foydalanish tavsiya etiladi, chunki static_cast yaroqsiz kastlarni cheklaydi va shuning uchun xavfsizroqdir. Qat'iy aytganda, static_cast operatsiyasi - bu ishlash uchun ma'lumotlar turini aniq ko'rsatishingiz kerak bo'lgan funktsiya shablonidir, ya'ni shablon parametrini belgilashingiz kerak.
  • 33. DASTURLASH 2 33 E’tiboringiz uchun rahmat Savollar ?