87
нымалы
болғандықтан, олардың арасындағы сəйкестіктерді іздеу жүзеге асы-
рылады. Егер бір қадамның өзінде-ақ сəйкестікті бірнеше тəсілмен
анықтау
мүмкін болса, шақыру тиянақсыз болып есептеледі де,
қате туралы хабарлама
беріледі.
Тиянақсыздық, яғни аргументтердің көрсетілген типтермен нақты түрде
сəйкес келмеуі келесі жағдайларда:
□ типті түрлендіру кезінде;
□
сілтеме-параметрлерді
қолдануда;
□ келісім бойынша берілген аргументтерді
пайдалану кезінде туындауы
мүмкін.
Типті түрлендіру кезіндегі сəйкессіздікке мысал:
#include
fl oat f(fl oat i){
cout << "function fl oat f(fl oat i)" << endl;
return i;
}
double f(double i){
cout << "function double f(double i)" << endl;
return i*2;
}
int main(){
fl oat x = 10.09;
double у = 10.09;
cout << f(x) << endl; // f(fl oat) шақырылады
cout << f(y) << endl; // f(double) шақырылады
/* cout << f(10) << endl; бірмəнсіздік – 10 санын қалай
түрлендіру керек: fl oat типіне немесе double типіне ме?
Достарыңызбен бөлісу: