1 // C++函數和類 05-返回類型.cpp: 定義控制台應用程式的入口點。 2 // 3 4 #include "stdafx.h" 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std; 1... ...
1 // C++函數和類 05-返回類型.cpp: 定義控制台應用程式的入口點。 2 // 3 4 #include "stdafx.h" 5 #include <iostream> 6 #include <string> 7 #include <limits> 8 #include <math.h> 9 #include <array> 10 using namespace std; 11 12 void swap(int &a, int &b); 13 int max(int a, int b); 14 int &sum(int a, int b, int &res); 15 int main() 16 { 17 int num1 =5; 18 int num2 = 15; 19 swap(num1, num2); 20 cout << "num1:" << num1 << endl; 21 cout << "num2:" << num2 << endl; 22 int res = max(num1, num2); 23 cout << "最大值為:" << res << endl; 24 25 res = sum(num1, num2, res); 26 cout << "兩個數的和為:" << res << endl; 27 28 sum(num1, num2, res)++; 29 cout << res << endl; 30 return 0; 31 } 32 33 //沒有返回值的函數,可以使用return; 34 void swap(int &a, int &b) 35 { 36 if (a >=b) 37 { 38 return; 39 } 40 else 41 { 42 int temp = a; 43 a = b; 44 b = temp; 45 } 46 } 47 48 //有返回值的函數,每個return語句都帶有結果。 49 int max(int a, int b) 50 { 51 if (a > b) 52 { 53 return a; 54 } 55 else 56 { 57 return b; 58 } 59 } 60 //返回引用類型:返回引用類型,可以在記憶體中不產生被返回值的副本,返回的是對象本身。 61 //但需要註意:不要返回局部對象的引用或指針。函數完成後,它所占用的儲存空間也隨之被釋放掉。為避免這種問題,我們可以返回 62 //一個作為參數傳遞給函數的引用。 63 64 int &sum(int a, int b, int &res) 65 { 66 res = a + b; 67 return res; 68 }