C++函数的高级特性

对比于 C 语言的函数,C++增加了重载(overloaded)、内联(inline)、const 和 virtual 四种新机制。其中重载和内联机制既可用于全局函数也可用于类的成员函数,const 与 virtual 机制仅用于类的成员函数。 重载和内联肯定有其好处才会被 C++语言采纳,但是不可以当成免费的午餐而滥用。

本章将探究重载和内联的优点与局限性,说明什么情况下应该采用、不该采用以及要警 惕错用。

 1 #include <iostream>
 2 
 3 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
 4 using namespace std;
 5 int main(int argc, char** argv) {
 6       // 声明用于存放运动员号码的数组
 7     int h[]={1001,1002,1003,1004}; 
 8     // 声明用于存放运动员成绩的数组
 9     float x[]={12.3,13.1,11.9,12.1};    
10     //声明用于存放运动姓名的字符型指针数组
11     char *p[]={"Wang hua","Zhang jian","Li wei","Hua ming"}; 
12     //i,j,it是用做循环控制变量和临时变量
13     int i,j,it; 
14     //ft 用做暂存变量
15     float ft;  
16     //pt为字符型指针变量用做暂存指针变量
17     char *pt; 
18 
19     //用选择法对数组x进行排序,并相应调整数组h和p中的数据
20     for (i=0;i<=3;i++)  
21         for (j=i+1;j<=3;j++)
22            if (x[i]>=x[j]) {
23               ft=x[i],x[i]=x[j],x[j]=ft;
24               it=h[i],h[i]=h[j],h[j]=it;
25               pt=p[i],p[i]=p[j],p[j]=pt;
26            }
27 
28     //以下打印排序结果
29     for (i=0;i<=3;i++)
30        cout<<h[i]<<" ,"<<p[i]<<" ,"<<x[i]<<endl;
31     return 0;
32 }
原文地址:https://www.cnblogs.com/borter/p/9406489.html