C++基础篇--函数

//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只是对编译器的一个请求,有时会因函数太长而忽略请求并把函数编译为一般的函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值