程序设计实习第十一讲类和对象httpaipkueducncpp20xx内容摘要:
nt tmp。 tmp = a。 a = b。 b = tmp。 } int n1, n2。 swap(n1,n2)。 // n1,n2的值被交换 引用的作用 函数的返回值可以是引用 ,如: include iostream using namespace std。 int n = 4。 int amp。 SetValue() { return n。 } main() { SetValue() = 40。 cout n。 } 该程序输出结果是 40 引用作为函数的返回值 类的成员函数的另一种写法 成员函数体和类的定义分开写 class CRectangle { public: int w,h。 int Area()。 //成员函数仅在此处声明 int Perimeter()。 void Init( int w_,int h_ )。 }。 int CRectangle::Area() { return w * h。 } int CRectangle::Perimeter() { return 2 * ( w + h)。 } void CRectangle::Init( int w_,int h_ ) { w = w_。 h = h_。 } CRectangle::说明后面的函数是 CRectangle类的成员函数,而非普通函数。 那么,一定要通过对象或对象的指针才能调用。 类的成员函数的另一种写法 对象成员的访问权限 在类的定义中,用下列权限关键字来说明对象成员的访问权限 private: 私有成员,只能在成员函数内访问 public : 公有成员,可以在任何地方访问 protected: 保护成员,以后再说 以上三种关键字出现的次数和先后次序都没有限制 定义一个类 class className { private: 私有属性和函数 public: 公有属性和函数 protected: 保护属性和函数 }。 说明类成员的可见性 如过某个成员前面没有上述关键字,则缺省地被认为是私有成员 class Man { int nAge。 //私有成员 char szName[20]。 // 私有成员 public: SetName(char * szName){strcpy( szName)。 }。 }。 对象成员的访问权限 在类的成员函数内部,能够访问: 当前对象的全部属性、函数 同类其它对象的全部属性、函数。 在类的成员函数以外的地方,只能够访问该类对象的公有成员 对象成员的访问权限 include class CHero { private: char szMenpai[10]。 //侠客的门派 public : int nStrength, nForce。 //生命值和攻击力 void SetMenpai(char * menpai)。 void Attack( CHero amp。 hero)。 }。 void CHero::SetMenpai( char * menpai) { strcpy( szMenpai,menpai)。 //ok } void CHero::Attack( CHero amp。 hero) { = nForce。 //在成员函数内部可以访 //问同类对象的私有成员 } int main() { CHero Hero1,Hero2。 strcpy(,“Shaolin”)。 //错 ,不能访问私有成员 ( Shaolin)。 // ok = 100。 //ok return 0。 } 设置私有成员的目的是强制对成员变量的访问一定要通过成员函数进行,那么以后成员变量的类型等属性修改后,只需要更改成员函数即可。 否则,所有直接访问成员变量的语句都需要修改。 设置私有成员的机制,叫“ 隐藏 ” 例如,如果将上面的程序移植到内存空间紧张的手持设备上,希望将 szMenpai 改为 int nMenpai, 即门派编号,然后根据门派编号能查到门派名字,如果 szMenpai 是私有,那么就要找出所有类似 strcpy(,”Shaolin”)。 这样的语句进行修改,这样做很麻烦。 如果将 szMenpai 为私有,那么程序中就不可能出现(除非在类的内部) strcpy(,”Shaolin”)。 这样的语句,所有对 szMenpai的访问都是通过成员函数来进行,比如: (“Shaolin”)。 那么,就算 szPenpai变成 int nMenpai了,上面的语句也不需要找出来修改,只。程序设计实习第十一讲类和对象httpaipkueducncpp20xx
相关推荐
// string length char *sPtr。 // pointer to start of string }。 26 运算符重载为友员函数 实现单目运算: op operand operand是类 A的对象 op应该重载为 A的友员函数,该函数有一个参数 friend return_type operator op(A arg) return_type是 op
柯察金有坚定革命信念,吃苦耐劳,积极进取,才获得最后的成功。 根据保尔 柯察金、冬妮娅、朱赫来等人物的性格特征,编写新的故事,并进行演讲。 表演精彩的筑路故事。 举行我最喜欢的的 《 钢铁是怎样炼成的 》 人物画展。 评论自己最欣赏的 《 钢铁是怎样炼成的 》 中的人物,并选择一个现、当代文学形象与之进行对比。 评价项目 评价内容及分值 承担工作 优 秀 良 好 继续努力 小组成员分工明确
j k a 在空间直角坐标系 Oxyz中,对空间任一点 A, 对应一个向量 OA,于是存在唯一的有序实数组 x,y,z,使 OA=xi+yj+zk 在单位正交基底 i, j, k中与向量 OA对应的有序实数组 (x,y,z),叫做点 A在此空间直角坐标系中的坐标,记作 A(x,y,z),其中 x叫做点 A的横坐标,y叫做点 A的纵坐标, z叫做点 A的竖坐标 . x y z O A(x,y,z)
,将待规划的路径看成是 n个点组成的点集,除初始点和目标点外其余 n2个点 {( xi, yi ) } i=2,3,4…n 1都未知,共有 2(n2)个未知参数。 ( 2) 112 2 22 , 2 , 3 , 3 , 1 , 1 1 122m in ( . . . ) [ ( ) ( ) ]nnl n n i i i i iiiE f x y x y x y L x x y y