練習問題 1.7.1
/*----------------------------------------------------------->
独習C++
練習問題1.7.1
引数の平方根を返すsroot()という名前の関数を作成しなさい。
sroot()関数を3通りにオーバーロードし、
それぞれ整数、長整数、倍精度浮動小数点の平方根を返すようにしなさい
------------------------------------------------------------->*/
#include<iostream>
using namespace std;
int Sroot( int num ){
return (int)sqrt( (double) num );
}
long Sroot( long num ){
return (long)sqrt( (double) num );
}
double Sroot( double num ){
return sqrt( num );
}
int main(){
int i = 9;
long L = 9;
double d = 1.44;
cout << "i:" << Sroot( i ) <<" L:" << Sroot( L ) << " d:" << Sroot( d ) ;
getchar();
return 0;
}
練習問題1.7.2
atof
atoi
atol
がオーバーロードできない理由:
これらは、文字列に含まれる数字を返す関数であるから、
引数は必ず文字列のみとなる。
同じ引数を持つ関数はオーバーロードできないから