`
ekumen
  • 浏览: 105354 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

c++ unit5

    博客分类:
  • c++
阅读更多
1. 如果函数的形参是数组实参的引用,那么数组的长度被作为类型的一部分。
2.
char s[]="abc";
char *p="abc";
s[0]='x';  //s是字符数组,其空间分配在栈上。对字符数组元素的修改是合法的
p[0]='x';  //p是字符指针,指向常量区的字符串。对字符串常量的修改是非法的
3. 把A obj[4]={A(1),A(5)};改写成:A obj[4]={1,5}; 运行结果是一样的,即把1、5作为构造函数的参数
4.
int A[2][3]={1,2,3,4,5,6};
int **p;
p=(int**)A;
cout << A[0][0] << endl;
cout << p[0][0] << endl;
p[0][0]是先取p[0]的值,然后再到p[0]所指的内存地址处取一个整数。
5. 成员数据指针
class Student{
public:
int age;
int score;
};
double average(Student* objs, int Student::* pm, int count){
int result = 0;
for(int i = 0; i < count; ++i)
  result += objs[i].*pm;
return double(result)/count;
}
int main(){
Student my[5] ={{17,75},{19,85},{20,80},{21,78},{22,83}};
double age_avg = average(my, &Student::age,5);
    //计算5个Student的age成员的总和,再求平均值://(17+19+20+21+22)/5=19.8
    double score_avg = average(my, &Student::score,5);
    //计算5个Student的score成员的总和,再求平均值://(75+85+80+78+83)/5=80.2
cout << age_avg << endl;
cout << score_avg << endl;
}
6. 句柄类
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics