//case.app
#include<iostream>
using namespace std;
void starline();
int main()
{
starline();
cout << "Data type Range. "<<endl;
starline();
cout << "char : -128~127" << endl
<< "short: -32768~32767" << endl
<< "int : System dependent " <<endl
<< "long :-2,147,483,648 to 2,147,483,647" << endl;
starline();
system("pause");
return 0;
}
//starline()
//function definition
void starline()
{
for (int i=o;i<45;i++)
cout <<'*';
cout << endl;
}
自定义函数通知编译器的两种途径:1.在函数被调用前先声明(如void starline()),最后在主函数后定义。2.先在main函数前定义,再调用。
重载函数:重载函数就是几个不同的函数(为了便于编程者使用)而使用的同名函数。如在C语言中的绝对值函数共有四个:用于int类型的 abs() , 用于复数的 cabs() ,用于 double类型的 fabs() ,以及用于long类型的 labs() 。但在C++中一个单独的 abs()就可以支持所有数据类型。注意:区分重载函数依靠参数个数,参数类型 。比如在C++中若abs()参数为int类型,则其代表C中abs();若其参数为double类型,则其代表C中的fabs() ,即编译器通过参数类型决定那个函数将被调用。
内联函数:针对小型函数(一两句)体,为了尽可能节约空间(调用函数需要的指令和函数本身的指令几乎占有相同的空间)时间损失,我们通常需要考虑将其内联。以下程序示例:
//inline.app
#include<iostream>
using namespace std;
//cirarea()
//calculate the area of the circle.
const int PI 3.1415926;
inline float cirarea(float radius)
{
return PI*radius*radius;
}
int main
{
float radius;
cout <<"\nEnter your radius of circle: ";
cin >> radius;
cout <<Your area of circle is "<< cirarea(radius)
<< endl;
system ("pause");
return 0;
}
函数内联的方法:只需在函数声明中加关键字inline: inline float cirarea(float radius); inline只是对编译器的一个请求,有时会因函数太长而忽略请求并把函数编译为一般的函数。