走向C之路ppt课件.ppt
《走向C之路ppt课件.ppt》由会员分享,可在线阅读,更多相关《走向C之路ppt课件.ppt(29页珍藏版)》请在三一文库上搜索。
1、走向C+之路,WindyWinter ,#include main(t ,_,a) char*a;return ti+?,()?qzyrjuvcdefg h,!kbpolwxs.t main(“),面向对象的C+,C+为此而生,类,Good morning class.,类是C+的新特性,为适应面向对象的程序设计而提出; 在C中,已经有了结构的概念; 类与结构的最大不同之处在于不仅可以包含成员变量(常量),还可以包含成员函数。 当然,类还包括一些其他的特性: 成员变量、成员函数的访问权限; 构造函数; 析构函数; 拷贝构造函数; 隐式类型转换; ,一个著名的类,class person pri
2、vate: string m_name; int m_age; string m_email; void update(); public: person(); person(); string get_namecard(); ; person wjj;,域运算符:,Well, one is just not enough.,string person:get_namecard() return m_name+m_email; #include int main() std:cout“wjj is a smart girl.”std:endl; return 0; ,this指针和成员函数的c
3、onst属性,This is my self.,每个类都有一个特殊的“成员”this,表示对象自身; this只能在该类的内部使用,与不指明this没有区别: this-m_name m_name; this-update() update(); 如果修改get_namecard()的声明为: string get_namecard() const ; get_namecard()将不能更改任何成员变量的值,在函数内部: this指针变成指向常量的指针; 任何成员变量被附加const属性。 这种声明主要用于指明该函数不会更改成员变量的值。,构造函数,constructor,没有返回值类型,与类
4、同名的函数被认为是构造函数; 它的作用就是构造一个对象。 如何构造? person() : m_name(“Wang Jingjing”), m_age(0) person(const person & t) : m_name(t.m_name), m_age(t.m_age), m_email(t.m_email) person(string name, int age) : m_name(name), m_age(age) ,构造函数,Its something not that new.,如果将某个构造函数声明为private,则这个构造函数将无法使用。一般来说,这样做的目的是阻止编译器
5、生成缺省的构造函数。 只带有一个参数的构造函数表明了一种可能的隐式类型转换: string(const char * s); new与malloc的区别在于:前者创建对象,后者分配空间。,析构函数,destructor,没有返回值,名字是,没有参数的函数是析构函数。构造函数可以有多个,析构函数只能有一个。 它的作用是销毁一个对象。 如果没有声明析构函数,编译器将合成默认析构函数: 对于内置类型,释放其空间; 对于类类型,调用其析构函数。 实际上,上面两步是编译器附加在任何析构函数最后的两步。因为没有办法显式“释放空间”和调用析构函数。 析构函数只能在delete时和离开该对象的生存域时被自动调
6、用。 也存在将析构函数声明为private的情况。,静态成员,Steady, steady,static关键字也可以修饰类的成员: class person static int population; static int get_population(); ; 被修饰的成员叫做类的静态成员,是这个类的属性,不是某个对象的属性。 访问用: int person:population = 0; person:get_population();,运算符重载,Its fully operational.,C+不仅提供了对函数的重载,也提供了对运算符的重载。运算符可以视为特殊的函数。一个简单的运算符
7、重载如下: 单目运算符: operator ( a); int 特别的运算符重载:+、-。,运算符重载,还有一类特殊的运算符也可以被重载: opetator () operator int(); operator xxx(); 这样的运算符必须是某个类的成员函数,它为这个类提供向特定类型的隐式类型转换。比如: class person string operator string(); 更多的很多情况下,运算符重载是一个复杂的工程。在你真正掌握重载之前,请慎用。,继承与派生,Kim Jong-il chooses third son as his successor.,class tallen
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 走向 ppt 课件
链接地址:https://www.31doc.com/p-3396138.html