1.【例2.11】内联函数的应用
#includeusing namespace std; inline double circumference(double radius); void main() { double r = 3.0, s; s = circumference(r); cout << "the circumference is" << s << endl; } inline double circumference(double radious) { return 2 * 3.1415926 * radious; }
2.重载函数应用举例
#includeint add(int x, int y); { int sum; sum = x + y; return sum; } int add(int x, int y, int z); { int sum; sum = x + y + z; return sum; } void main() { int a, b; a = add(5, 10); b = add(5, 10, 20); cout << "a=" << a << endl; cout << "b=" < , b << endl; }
3.编写一个对具有n个元素的数组a[]求最小值的程序,将求最小值的函数设计成函数模板。
#includetemplate T min(T a[], int n); { int i; T minv = a[0]; for (i = 1; i < n; i++) if (minv > a[i]) minv = a[i]; return minv; } void mian() { int a[] = { 1,3,0,2,7,6,4,5,2 }; double b[] = { 1.2,-3.4,6.8,9.8 }; cout << "a数组的最小值为:" << min(a, 9) << endl; cout << "b数组的最小值为:" << min(b, 4) << endl; }
4.模板函数与重载函数同时出现在一个程序体内举例
#include#define PI 3.1415826535 template double Circle_Square(long x) { return x*x*PI } void main() { int r1 = 1; double r2 = 2.0; long r3 = 3; cout << "The first circle square is" << Circle_Square(r1) << endl; cout << "The second circle square is" << Circle_Square(r2) << endl; cout << "The third circle square is" << Circle_Square(r3) << endl; }



