目錄
1、內(nèi)聯(lián)函數(shù)
2、默認(rèn)形參值函數(shù)
3、重載函數(shù)
4、系統(tǒng)函數(shù)
1、內(nèi)聯(lián)函數(shù)
(1)定義
在函數(shù)前面加上 inline 申明
eg:
inline double CalArea(double radius)
{ return 3.14*radius*radius;
}
void main()
{
double r(3.0);
double area;
area=CalArea(r);
cout<<area<<endl;
}
(2)作用
提高運(yùn)行的速度。
對(duì)于一些程序代碼小,運(yùn)行時(shí)間短,但利用次數(shù)比較多的函數(shù)我們就定義為inline。
(3)注意
內(nèi)聯(lián)函數(shù)體內(nèi)不能有循環(huán)語句和switch語句;
內(nèi)聯(lián)函數(shù)的聲明必須出現(xiàn)在內(nèi)聯(lián)函數(shù)第一次被調(diào)用前。
2、默認(rèn)形參值函數(shù)
函數(shù)聲明時(shí)預(yù)先給出默認(rèn)的形參值,調(diào)用時(shí)若給出實(shí)參,則采用實(shí)參值,否則采用預(yù)先給出的默認(rèn)形參值。
還是先來看一個(gè)簡單的例子
#include "iostream"
using namespace std;
int add(int a = 3, int b = 9)
{
return a + b;
}
void main(void)
{
cout << add(10, 20)<<endl;
cout << add(10)<<endl;
cout << add()<<endl;
}
?調(diào)用函數(shù)時(shí)給了實(shí)參就用實(shí)參值,沒給就用預(yù)先給出的默認(rèn)形參值
并且,在默認(rèn)形參值的右面不能有非默認(rèn)形參值的參數(shù)。
eg:
int add(int x, int y=5, int z=6);? //對(duì)
int add(int x=1, int y=5, int z);? //錯(cuò)
int add(int x=1, int y, int z=6);? //錯(cuò)
3、重載函數(shù)
功能相近的函數(shù)在相同的作用域內(nèi)以相同函數(shù)名聲明,形成重載,方便使用和記憶。
eg:
int add(int x, int y);
float add(float x, float y);
形參類型不同
int add(int x, int y);
int add(int x, int y, int z);
形參個(gè)數(shù)不同
再來看一個(gè)簡單的例子:
編寫二個(gè)名為add的重載函數(shù),分別實(shí)現(xiàn)兩個(gè)整數(shù)相加 、兩個(gè)實(shí)數(shù)相加。
int add(int m, int n)
{
return m + n;
}
double add(double x, double y)
{
return x + y;
}
void main(void)
{
int m, n;
double x, y;
cout << "請(qǐng)輸入兩個(gè)整數(shù): ";
cin >> m >> n;
cout << m << '+' << n << "=" << add(m, n) << endl;
cout << endl;
cout << "請(qǐng)輸入兩個(gè)實(shí)數(shù): ";
cin >> x >> y;
cout << x << '+' << y << "= " << add(x, y) << endl;
}
?文章來源地址http://www.zghlxwxcb.cn/news/detail-412665.html
4、系統(tǒng)函數(shù)
C++的系統(tǒng)庫中提供了幾百個(gè)函數(shù)可供程序員使用
比如:求平方根函數(shù)(sprt)、求絕對(duì)值函數(shù)(abs)等
使用系統(tǒng)函數(shù)時(shí)要包含相應(yīng)的頭文件,比如:math.h 或 cmath
eg:
從鍵盤輸入一個(gè)角度值,求出該角度的正弦值、余弦值和正切值。
系統(tǒng)函數(shù)中提供了求正弦值、余弦值和正切值的函數(shù):sin( )、cos( ) 、tan( )
函數(shù)的說明在頭文件cmath中
#include "iostream"
#include<cmath>
using namespace std;
const double pi = 3.14159265; //使用const定義了一個(gè)雙精度浮點(diǎn)型的常量pi
void main()
{
double a, b;
cin >> a;
b = a * pi / 180;
cout << "sin(" << a << ")=" << sin(b) << endl;
cout << "cos(" << a << ")=" << cos(b) << endl;
cout << "tan(" << a << ")=" << tan(b) << endl;
}
總的來說這些都還是比較好理解的吧,fighting!文章來源:http://www.zghlxwxcb.cn/news/detail-412665.html
?
到了這里,關(guān)于C++程序設(shè)計(jì)函數(shù)部分(定義+實(shí)例)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!