C++函數

目錄

函數作用

函數定義

函數聲明

函數調用

函數值傳遞

函數常見的樣式

函數的分文件書寫


函數作用

將經常使用的代碼封裝起來,減少重複代碼

函數定義

C++ 中的函數定義的一般形式如下:


return_type function_name( parameter list )
{
   body of the function
}

在 C++ 中,函數由一個函數頭和一個函數主體組成。下面列出一個函數的所有組成部分:

  • 返回類型:一個函數可以返回一個值。return_type 是函數返回的值的數據類型。有些函數執行所需的操作而不返回值,在這種情況下,return_type 是關鍵字 void
  • 函數名稱:這是函數的實際名稱。函數名和參數列表一起構成了函數簽名。
  • 參數:參數就像是佔位符。當函數被調用時,您向參數傳遞一個值,這個值被稱爲實際參數。參數列表包括函數參數的類型、順序、數量。參數是可選的,也就是說,函數可能不包含參數。
  • 函數主體:函數主體包含一組定義函數執行任務的語句。
//求兩數之和的函數
int sum(int a, int b) {
	return a + b;
}

函數聲明

函數聲明會告訴編譯器函數名稱及如何調用函數。函數的實際主體可以單獨定義。函數的聲明可以有多個但是聲明只有一個,針對上面定義的函數 sum(),以下是函數聲明:int sum(int num1, int num2);

在函數聲明中,參數的名稱並不重要,只有參數的類型是必需的,因此下面也是有效的聲明:int sum(int, int);

函數調用

#include <iostream>
using namespace std;
//函數聲明
int sum(int m1,int m2);
int main() {
	int ret = sum(1, 2);
	cout << ret;
}
//求兩數之和的函數
int sum(int a, int b) {
	return a + b;
}

函數值傳遞

#include <iostream>
using namespace std;
//函數聲明
void swap(int m1,int m2);
int main() {
	int a = 1;
	int b = 2;
	//當做函數的值傳遞時候,函數的形參發生變化不會影響實參
	swap(a, b);
	cout << a;//1
	cout << b;//2
}
//交換
void swap(int a, int b) {
	int temp = b;
	b = a;
	a = temp;
	cout << a;//2
	cout << b;//1
}

函數常見的樣式

無參無返

無參有返

有參無返

有參有返

函數的分文件書寫

爲了代碼簡介複用,有時將函數份文件書寫,項目結構

第一步創建後綴名是.h的頭文件並聲明函數

#include <iostream>
using namespace std;
//函數聲明
void swap(int m1, int m2);

第二步創建後綴名是.cpp的源文件,並定義函數

#include <iostream>
#include "sum.h"//要引用頭文件
using namespace std;
//交換
void swap(int a, int b) {
	int temp = b;
	b = a;
	a = temp;
	cout << a;//2
	cout << b;//1
}

第三步使用

#include <iostream>
#include "sum.h"//應用swap函數所在的頭文件
using namespace std;
//函數聲明
void swap(int m1,int m2);
int main() {
	int a = 1;
	int b = 2;
	swap(a, b);
	cout << a;//1
	cout << b;//2
}

   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章