Vb教程 Vb.net教程 Vfp教程 C/C++教程 Vc/Vc++教程 Delphi教程 Java教程 Powerbuilder
  杀毒频道 | 短信频道 | 网络电视 | 论文中心 | 学上网 | 学软件 | 网页特效 | 电脑基础 | 论坛  
  NCRE | 软考 | CET | 职称英语 | 司法考试 | 报关员 | 公务员 | CATTI | CPA考试  
  Html教程 | Css教程 | Xml教程 | Asp教程 | Asp.net | Php教程 | Jsp教程 | Linux教程 | QQ技巧  
Photoshop Illustrator ImageReady Maya教程 3D Max教程 Lightscape Coredraw教程 Authorware Autocad教程 Freehand教程
Access教程 Mysql教程 Sql server Oracle教程 Word教程 Excel教程 Powerpoint Frontpage Asp.net源码 Php源代码
Flash教程 Fireworks Dreamweaver C#教程 outlook教程 系统安装 vbscript教程 Javascript Jsp源代码 Asp源代码
您的位置:首页 >> C/C++教程 >> 正文

『21天精通C++』第二周学习笔记(2-1)
文章来源:pconline

作者:雷神
转载请联系作者

第八天:抽象数据类型是指用户自定义的数据类型。虽然用户使用内部类型来定义抽象数据类型但它不是内部数据类型。

"."点操作符是访问对象变量的成员
"->"指针操作符是访问指针指向的对象变量。
包含结构类型的的结构称嵌套结构类型。嵌套结构类型可以再次被嵌套,访问被嵌套的结构成员必须用两个点操作符。
通常把类数据声明为全局性的,把类变量声明为局部的。并把类声明放在头文件中用"#include"来包含它们。
在类声明后必须有分号。可以在声明类的同时声明类变量。如下:

class empData{
char empCode[8];
float wkSalary;
}emp1,emp2;


   理论上说一切变量都是对象,但VC++的对象通常是指类变量。
对象是程序声明的某类变量,对对象的声明称做对某类实例化。
类的成员缺省是私有的。

   局部(块作用域)全局(文件作用域)

   类作用域:如果一个变量有类作用域,那么它只能在这个类中被使用。所以即使这个类变量是函数的局部变量,它的成员也未必都能被这个函数访问。
   两个关键字:public 和 private可以改变class和struct的member的缺省状态。
关键字public\private\protected叫做访问说明符。其中public和private决定了是否能在外部访问类或结构的成员。

第九天:成员函数有时被称为方法,因为它提供了一种严格的访问私有数据的方法。

class ABC{
int a;//数据成员
float b;//数据成员
char c;//数据成员
};


属性描述类的初始状态,这个类的属性包括一个整数成员、一个浮点成员、一个字符成员,所有这些成员组成了ABC类的属性。
如果类中存在函数则称为成员函数(和成员数据一样成员函数也是类的成员)。成员函数便是此对象的行为。成员函数通常被设定为公有成员。(public)。
可以用点操作符调用类中的公有数据成员和成员函数。成员函数的基本目的就是控制程序的其他部分对私有数据的访问。通常私有数据和公有函数组成了一个完整的对数据提供保护的类。
//用以上学到的概念作一个扑克牌发牌程序,和一个彩票随机出号程序。
main()函数不仅仅是一个程序的框架,还是一个高水平的组织管理系统,管理对象并且通过发送消息控制对象的行为(通过调用成员函数)。
注意:用户只有在类变量被定义后才能赋值。只定义了类是不会有内存空间分配给它,只有定义了类变量才行。这就是说不能在类定义中初始化类的成员。
一定要在成员函数中添加参数表(可以用缺省参数表),以便在以后的程序中向成员函数传递参数。

成员函数并不是只能从对象外部到内部的单向数据通道,只要在成员函数中设置一个返回值,就很容易使对象的成员函数返回一个值到main()中。
建议为每个数据成员编写只返回一个值的只读访问成员函数,以便main()或程序其他部分访问某个数据时使用。
只把成员函数的原型放在类中,让类成为一个头文件。(包含类的简要说明,数据成员和成员函数的原型)。把成员函数体放在类说明之后,但在main()之前。在实际的编程中把所有的类定义放在一个类的头文件中,在程序中用"#include"包含类代码。最好是提供类的头文件,但事先把所有的成员函数代码编译好,在程序中使用它们时连接目标代码。
把成员函数放在类定义之外时,不要忘记在函数名前冠以作用域说明符。在每个成员函数前必须冠以它所属的类名和作用域说明符。这样才能使它和它所属的类匹配。格式如下:

类名::函数名(参数表)
例:
void ABC::getVals(void)

技巧:可以使用内联函数提高类的工作效率。
通过成员函数提供数据保护这样类不会被赋错误的值。
封装是指把几个元素包含在一个外壳中。封装就是把数据成员和成员函数联编在一个类中,这样对象可以拥有属性和行为两方面内容。

*this指针被隐式的传递给所有成员函数,它指向引起这次函数调用的对象。通过传递*this指针,VC++告诉成员函数对哪个对象进行操作。有一些情况下必须直接对*this进行操作,但大多数情况可以忽略这个指针的存在。

[返回]

编程语言 web开发 数据库 网络技术 操作系统 服务器 网页设计 图形设计 办公软件 常用软件 学电脑

Copyright© www.bianceng.cn Powered by 编程入门网 All Rights Reserved.
关于本站 | 版权声明 | 联系我们 | 友情链接 |
编程入门网 版权所有