С стиліндегі типтерді келтіру операциясы Операция екі түрлі формада жазылуы мүмкін:
тип (өрнек) (тип) өрнек Операцияның нəтижесі берілген типтегі мəн болып табылады, мысалы:
int a = 2; fl oat b = 6.8; printf("%lf %d", double (a), (int) b); Бұл мысалдағы
а шамасы
double типіне, ал
b айнымалысы бөлшек бөлігі
алып тасталған
int типіне түрлендіріледі, осы екі жағдайда да түрлендіру
операциясының нəтижесін бейнелеудің ішкі формасы оның бастапқы мəнінің
формасынан өзгеше болып келеді.
Типті түрлендіру қажеттілігі, мысалы, нақты көрсетілген типті айнымалы-
мен қандай да бір əрекеттерді орындау үшін, функция оған меншіктелуі тиіс
void типіне нұсқауышты қайтаратын кезде туындайды:
fl oat *q = (fl oat *) malloc(100 * sizeof(fl oat)); Типті тікелей түрде түрлендіру кейбір қателіктердің туындауына себепші
болып табылады, өйткені оның нəтижесі үшін жауапкершілік толығымен
тек программалаушыға жүктеледі. Сондықтан C++ тілінде орындалатын
түрлендірулерге ішінара аздаған бақылау жасауға немесе программалаушының
ниетін түсінуді жеңілдетуге мүмкіндік беретін операциялар енгізілген.
Жоғарыда қарастырылған С стиліндегі түрлендіру C++ ортасында тек тілдер
үйлесімділігін сақтау үшін қалдырылған, оны кеңінен қолдану ұсынылмайды. Мұнда қажет етілетін түрлендіру түріне байланысты соған сəйкес келетін
лайықты типті келтіру операциясы қолданылуы тиіс.
250
ЕСКЕРТУ С++ компиляторларының алғашқы нұсқалары
const_cast, reinterpret_cast, dynamic_cast жəне
static_cast сияқты типті келтіру операцияларын сүйемелдемейді.
const_cast операциясы Бұл операция