缺省构造函数-程序设计谭浩强 学习缺省构造函数的定义和作用

需积分: 35 0 下载量 4 浏览量 更新于2024-01-03 收藏 8.66MB PPT 举报
文章主题是关于缺省的构造函数。缺省的构造函数是在定义类时没有定义构造函数的情况下,编译器会自动产生一个默认的构造函数。这个构造函数没有对对象的数据成员赋初值,即新产生对象的数据成员的值是不确定的。 文章进一步从C语言的发展历史来介绍C语言的背景和重要性。自从第一台电子数字计算机ENIAC问世以来,计算机技术不断发展,特别是近年来的硬件和软件发展迅速。作为计算机应用的工具,C语言得到了不断的充实和完善。每年都有新的程序设计语言问世,老的程序设计语言也在不断更新。文章提到20世纪60年代,Martin Richards开发了BCPL语言,作为一种记述语言用于开发系统软件。然后在此基础上,Ken Thompson发明了实用的B语言。到了1972年,Dennis Ritchie和Brian kernighan在B语言的基础上发明了C语言。 文章的核心内容是对缺省的构造函数的介绍。缺省的构造函数是在没有定义构造函数的情况下,编译器自动产生的一个默认构造函数。这个构造函数不会对对象的数据成员赋初值,所以新产生的对象的数据成员的值是不确定的。为了避免这种不确定性,可以在定义类时显式地定义构造函数,并对数据成员赋初值。 文章指出,虽然缺省的构造函数没有对数据成员赋初值,但是在某些情况下仍然可以使用它,比如当对象的数据成员的初值并不重要时,或者在定义类的时候不定义构造函数的时候。 文章还提到了构造函数的重载和默认参数。通过构造函数的重载和默认参数,可以实现不同的构造函数,从而满足不同的初始化需求。 最后,文章总结了缺省的构造函数的重要性和使用方法。缺省的构造函数是在没有显式定义构造函数的情况下,编译器自动产生的一个默认构造函数。尽管它不会对数据成员赋初值,但在某些情况下仍然可以使用。但为了避免数据成员的不确定性,建议显式地定义构造函数并对数据成员赋初值。通过构造函数的重载和默认参数,可以实现不同的构造函数,满足不同的初始化需求。