《走向C++之路》PPT课件

《走向C++之路》PPT课件

ID:42021907

大小:280.50 KB

页数:29页

时间:2019-09-06

《走向C++之路》PPT课件_第1页
《走向C++之路》PPT课件_第2页
《走向C++之路》PPT课件_第3页
《走向C++之路》PPT课件_第4页
《走向C++之路》PPT课件_第5页
资源描述:

《《走向C++之路》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、走向C++之路WindyWinterwindy@briefdream.com#includemain(t,_,a)char*a;{returnt<1?main(*a,a[-t],"=a-1kj3gnm:qebh_cf*i^+?,()[?qzyrjuvcdefgh,!kbpolwxs'.tmain(")&&a[-t]&&main(t-1,_,a):t/2?_==*a?putchar(32[a]):_%115<36

2、

3、main(t,_,a+1):main(0,t,"+b:s?#mw{ty}t(x1{

4、~?y<#q?(*#{k)}r

5、sh?vts){?w*#yku:!zym^t

6、x

7、

8、xtutu!uz

9、#}t");}面向对象的C++C++为此而生类Goodmorningclass.类是C++的新特性,为适应面向对象的程序设计而提出;在C中,已经有了结构的概念;类与结构的最大不同之处在于——不仅可以包含成员变量(常量),还可以包含成员函数。当然,类还包括一些其他的特性:成员变量、成员函数的访问权限;构造函数;析构函数;拷贝构造函数;隐式类型转换;……一个著名的类classperson{private:stringm_name;intm_age;stringm

10、_email;voidupdate();public:person();~person();stringget_namecard();};personwjj;域运算符::Well,oneisjustnotenough.stringperson::get_namecard(){returnm_name+m_email;}#includeintmain(){std::cout<<“wjjisasmartgirl.”<

11、员”——this,表示对象自身;this只能在该类的内部使用,与不指明this没有区别:this->m_namem_name; this->update()update();如果修改get_namecard()的声明为:stringget_namecard()const;get_namecard()将不能更改任何成员变量的值,在函数内部:this指针变成指向常量的指针; 任何成员变量被附加const属性。这种声明主要用于指明该函数不会更改成员变量的值。构造函数constructor没有返回值类型,与类同名的函数被认为是构造函数;它的作用就是——构造一个对象

12、。如何构造?person():m_name(“WangJingjing”),m_age(0){…}person(constperson&t):m_name(t.m_name),m_age(t.m_age),m_email(t.m_email){…}person(stringname,intage):m_name(name),m_age(age){…}构造函数It’ssomethingnotthatnew.如果将某个构造函数声明为private,则这个构造函数将无法使用。一般来说,这样做的目的是阻止编译器生成缺省的构造函数。只带有一个参数的构造函数表明了一种可能

13、的隐式类型转换:string(constchar*s);new与malloc的区别在于:前者创建对象,后者分配空间。析构函数destructor没有返回值,名字是~,没有参数的函数是析构函数。构造函数可以有多个,析构函数只能有一个。它的作用是销毁一个对象。如果没有声明析构函数,编译器将合成默认析构函数: 对于内置类型,释放其空间; 对于类类型,调用其析构函数。实际上,上面两步是编译器附加在任何析构函数最后的两步。因为没有办法显式“释放空间”和调用析构函数。析构函数只能在delete时和离开该对象的生存域时被自动调用。也存在将析构函数声明为

14、private的情况。静态成员Steady,steady…static关键字也可以修饰类的成员:classperson {…staticintpopulation;staticintget_population(); };被修饰的成员叫做类的静态成员,是这个类的属性,不是某个对象的属性。访问用::intperson::population=0;person::get_population();运算符重载It’sfullyoperational.C++不仅提供了对函数的重载,也提供了对运算符的重载。运算符可以视为特殊的函数。一个简单的运算符重载如下:单目运算符:

15、operator[](

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。