208
monstr A(10), B, C;
C = B = A;
Меншіктеу операциясын тек класс əдісі ретінде ғана анықтауға болады. Ол
мұраланбайды.
new жəне delete операцияларының асыра жүктелуі
Жадыны басқарудың альтернативті нұсқаларын қамтамасыз ету мақсатында
объект пен объетілер жиымына сəйкесінше динамикалық жады бөлу үшін
new
жəне
new[]
, сонымен қатар оны босату үшін
delete
жəне
delete []
операцияларының өзіндік (меншікті) нұсқаларын анықтауға болады.
Мұндай функция-операциялар келесідей ережелерге сəйкес келуі керек:
□ оларға класс типіндегі параметрлерді
берудің қажеті жоқ;
□
new
жəне
new[]
функцияларына алғашқы параметр ретінде
size_t
типті объект өлшемі берілуі керек (
sizeof
операциясы
қайтаратын бұл
тип
тақырыптық файлында анықталады); шақыру кезінде ол
функцияға айқын емес түрде беріледі;
□
return
командасы басқа типтерге (көбінесе кластарға) нұсқауыштар
қайтаратын болса да, бұл функциялар қайтарылатын мəннің
void*
типімен
анықталуы тиіс;
□
delete
операциясының қайтарылу типі
void
жəне
алғашқы аргументінің
типі
void*
болуы тиіс;
□ компьютер жадын бөлу жəне босату операциялары кластың статикалық
элементтері болып табылады.
Асыра жүктелген операциялардың тəртіптері
олардың келісім бойынша
орындайтын əрекеттеріне сəйкес келуі тиіс
Достарыңызбен бөлісу: