Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»



Pdf көрінісі
бет408/642
Дата30.03.2022
өлшемі3,66 Mb.
#29231
түріПрограмма
1   ...   404   405   406   407   408   409   410   411   ...   642
Байланысты:
pavlovskaia-jogargy-dengeili

class MyClass{ 

 

int   x; 

 

fl oat y;

 ...

}

Осы кластың объектілерін енгізу жəне шығару үшін 



MyClass

 класында 

келесі түрдегі операцияларды анықтау талап етіледі:

// Шығару:

friend ostream& operator << (ostream& out, MyClass& C){ 

 

return out << "x = " << C.x <<  y = " << C.y;

}

// Енгізу:

friend istream& operator >> (istream& in, MyClass& C){ 

 

cout << "x енгізіңіз: "; in >> C.x; 

 

cout << "y енгізіңіз: "; in >> C.y; 

 return 

in;

}

Осыдан кейін программадағы енгізу жəне шығару операцияларында стан-

дартты тип шамаларымен қатар

 MyClass

 класының объектілерін де қолдануға 

болады:

#include  

class MyClass{ 

 

   int   x; 

 

   fl oat y; 

 public:

 

   MyClass(int nx = 1, fl oat ny = 0.01){

 

      x = nx; y = ny;} 

 

   friend ostream& operator << (ostream& out,  

 

 

   MyClass& C){ 

 

      return out << "x = " << C.x << " y = " << C.y;

 

   }

20-1140



306

friend istream& operator >> (istream& in,   

 

         MyClass& C){ 

 

      cout << "х енгізіңіз: "; in >> C.x; 

 

      cout << "y енгізіңіз: "; in >> C.y; 

 

      return in;

 

   }

};

int main(){ 

 MyClass 

C; 

 

cout << C << endl; 

 

MyClass C1(100, 100); 

 

cout << C1 << endl; 

 MyClass 

C2;

 

cin >> C2; cout << C2 << endl; 

 return 

0;

}

MyClass

 класының 



С

 экземпляры (данасы) келісім бойынша тағайын-

далған конструктордың параметрлері арқылы құрылады, сондықтан экранға 

келесі нəтиже шығарылады:



x = 1 y = 0.01

MyClass

 класының

 С1 

данасы 100, 100 параметрлерімен құрылады: 



x = 100 y = 100

С2

 экземпляры (данасы) құрылғаннан кейін 



x

 жəне 


y

 шамаларын енгізуді 

ұсынатын мəлімет шығарылады, осыдан соң барып пернетақтадан енгізілген 

мəндер экранға шығарылады.

Стандартты ағымдар қолданылған программаларды қарастыруға 

практикумның [12] 4-ші жəне 5-ші семинарлары арналған. 




307

11-ТАРАУ

Тіркестер

Стандартты кластар жай ғана

С++ құрамына енгізілмейді. 

Г. Шилдт


С++ тілінде сөз тіркестерін бейнелейтін «тіркес» стандартты мəліметтер 

типі жоқ. Оның орнына С++ тілі нөлсимволмен аяқталатын символдар жиы-

мын сүйемелдейді. Кітапханада осындай жиымдармен жұмыс істеуге арналған 

 (

) тақырыптық файлында сипатталған жəне С тілінен 

мұраланған функциялар бар. Осы функциялар туралы «Тіркестермен жəне 

символдармен жұмыс істеу функциялары» бөлімінде, 97 б. жазылған. Олар 

жоғарғы тиімділікке қол жеткізуге мүмкіндік береді, бірақ қолдануға аса 

қолайсыз жəне сенімсіз болып келеді, өйткені символдардың тіркес шекара-

сынан шығу мүмкіндігі тексерілмейді. 

Стандартты кітапхананың 

string 

мəліметтер типінде мұндай 

кемшіліктер жоқ, бірақ ол тиімділігі жағынан символдар жиымынан төмен 

қалуы мүмкін. Тіркестермен орындалатын негізгі əрекеттер операциялар мен 

əдістердің көмегімен атқарылады, ал тіркестің ұзындығы қажеттілігіне қарай 

динамикалық түрде өзгеріп отырады. Класты қолдану үшін программаға 



 тақырыптық файлын

1

 қосу қажет. Енді мысал қарастырайық:





Достарыңызбен бөлісу:
1   ...   404   405   406   407   408   409   410   411   ...   642




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет