C重点难点汇总精华.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
封装 继承 多态 封装,数据部分, class name 继承 , 在实现程序时, 可以像生活中儿子继承父母遗产一 样,子类将父类中的属性 ( 类中的数据成员 ) 和行为 ( 类中的成员函数 ) 继承,从而实现父类所有内容为子类所用的功能 ( 代码重用 ) 多态 , 在实现程序时,可以将父类的行为 ( 类中的成员函数 ) 再次定义从而实现新的行为 ( 重载,重写 ) ,使程序的 执行结果多样化 其实类的话和结构体的字节大小算法不一样,不管它的大小 Public (本类,子类,其他类) --- 》 protected (本类, 子类) --- 》 private (本类)。 Private 私有的 只能在一个地方(本类)访问。 类的初始化 在类里面,必须创建对象之后才能初始化,不能在类里面 直接初始化。一般数据类型不能在类外面初始化,但是静 态的( static )类型可以再类的外面进行初始化 -- (有且 只有 static 在类外可以初始化,因为静态的是在全局数 据区存放的,在编译的时候就给它分配内存了) 。 类里面的数据可以是任意的,但是不能有本类的对象(因为不知道怎么分配内存) ,本类的指针是可以的, 静态函数当中不能出现 this ,this 是在运行的时候才有。 构造函数 构造函数的作用就是对类里面的数据进行初始化 构造函数是自动调用 构造函数不能写返回值, 最好写一个自己的默认构造函数以防止出现错误。 Malloc 只能分配堆内存, new 不仅能分配内存调用有参数的 构造函数,对类的数据进行初始化。 构造函数可以用 ( 初始化列表 ) student():count(0); student ( char *name , Int age , int c ) :count(c) ; 对常量 count 进行初始化。 引用也必须在初始化列表当中进行初始化。 初始化列表的顺序是按照定义的顺序,并且是包含的小类先 执行 , 它比构造函数还先执行。 当类内有成员为指针的时候 , 不能简单的复制 , 要把堆内存 分配 , 然后再把值拷过来 , 析构函数 () 为了避免内存泄露用到析构函数 , 析构顺序与构造函数的顺 序正好相反 ! 迭代器 String-----str.reserve(20), 只改变容量 str.capacity String-----str.resize(30), 改 变 实 际 的 字 节 数 str.size,str.length, 当然还有 str.capacity Str.append 连接, str.assign 拷贝, str.at ( 0)修改第一个字符, str.empty ()判断是空返回 1; pare() 比较字符串(相等返回 0) str.substr(0,5)截取字符串; str.swap(str2) 交换; str.find; 查找 str.find_first_of;---str.find_first_not_of; str.replace(0,5,”hello ”); str.insert();字符串插入 string 迭代器 相当于指针 返回一个对象的时候 , 调用拷贝函数 静态数据成员 不管有多少个对象 , 静态数据成员只有一个内存 , 它会随着对象的改变而直接改变 ;( 可以用它来记录有多少个对象 ) **1. 静 成 函数不能 用非静 成 函数 , 但是可以 用 静 成 函数 ( 因 静 成 函数是在 的 候分配内存 , 一般函数是在运行的 候才分配内存 ). 静 只能 静 的 ! **2. 一般函数可以 用静 函数 . 嵌套类 ( 外部 内部 ) 内部 不可以 外部 的一般数据 , 只能 静 数据 , 但是外部 可以 内部 的任何 型数据 ( 是由于内部 和外部 是两个 , 的 候先 内部 再 外部 的 ). 局部类 局部 里面不能有静 的数据成 和静 的成 函数 ; 友元 友元啊,在定 里面 函数前面加上 friend 即可,可以将一个 定 另一个 的友元 ?? 指向 中数据成 的指 ,注意声明的 候要加 域,初始化也要注意,( int student::*p; P = &student::age Stu.*p = 10 ) 例子如下: #include <iostream> #include <string> using namespace std ; class student { public : int age; student (){} int fun( int {  age) this -> age = age; return this -> age;

文档评论(0)

134****6803 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档