C++类成员声明与名字查找解析

需积分: 44 1 下载量 60 浏览量 更新于2024-07-14 收藏 16.97MB PPT 举报
"这篇文档是关于C++学习的笔记,主要讨论了类成员声明时的名字查找规则,并提及了C++的起源、特点以及在不同领域的应用。" 在C++编程中,类成员声明时的名字查找是一项重要的过程,它遵循特定的步骤来确定标识符的含义。以下是这个名字查找机制的详细解释: 1. **名字查找的第一步**:在名字出现的位置之前,编译器会检查当前所在的类的作用域。在这个例子中,`Account`类中声明了`Money`类型的成员`bal`和公共成员函数`balance()`。当在`balance()`函数体内部引用`bal`时,编译器首先会在`Account`类的私有成员作用域中找到这个`Money`类型的变量。 2. **名字查找的第二步**:如果在类的作用域内找不到匹配的名字,编译器会继续查找全局作用域。在示例中,`Money`被声明为一个`typedef`,定义在全局作用域,因此当在类中声明`Money`类型的成员函数或变量时,编译器会找到这个`typedef`。 C++是由比雅尼·斯特劳斯特鲁普博士在1979年开发的,起初名为"C with Class",后来演变为C++。1998年,C++被正式确立为ANSI/ISO标准。C++是一种通用的、面向对象的编程语言,它在C语言的基础上增加了对数据抽象、面向对象编程和泛型编程的支持。这使得C++在系统编程、游戏编程、网络编程和嵌入式领域广泛应用。 C++的发展可以分为三个阶段:早期作为C的扩展,加入了面向对象特性;随后引入泛型编程,如STL和Boost库;最后,进一步发展了模板元编程,如Loki和MPL库。随着时间的推移,C++不断成熟,其行业地位稳固,被广泛用于各种复杂的软件开发。 学习C++的过程中,除了理解类成员的名字查找规则,还需要熟悉C++的基础语法、类和对象的概念、模板、异常处理、内存管理和标准库等。此外,了解C++的行业地位和应用领域有助于理解其重要性和学习方向。推荐的教材包括《The C++ Programming Language》、《C++ Primer》、《C++大学教程》和《C++高级编程》。课程通常包括理论和实践两部分,通过选择题、填空题和编程题来评估学生的学习进度。