C++指针关系运算与赋值规则解析

需积分: 0 13 下载量 123 浏览量 更新于2024-08-18 收藏 3.82MB PPT 举报
"这篇资料主要介绍了C++中的指针变量的关系运算和赋值运算,以及在编程中的结构体、函数和类的概念。" 在C++编程语言中,指针是核心概念之一,它允许程序员直接操作内存地址。指针变量的关系运算主要涉及到比较两个指针是否指向相同的数据或内存位置。当两个指针都指向相同类型的数据时,我们可以对它们进行如相等(==)或不等(!=)的比较。比如描述中提到的`p==0`或`p!=0`,这用来判断指针是否为空。但是,不同数据类型的指针以及指针与非地址值之间的比较通常没有意义,因为它们代表不同的内存区域或完全不同的概念。 赋值运算对于指针变量来说,规则比较严格。只能将地址常量或变量的地址赋值给指针,不能直接赋值普通的整数。不过,可以将整数0赋值给指针,表示空指针或未初始化的指针。这样做有助于在代码中检查和管理指针的状态。 文件中的例子如9-1.c到9-5.c可能展示了这些概念的实际应用,例如通过示例代码演示了如何使用指针进行关系运算和赋值。此外,资料还提到了C++中的结构体(struct),这是一种复合数据类型,可以包含不同类型的数据成员,如`struct aircraft`,它可以用来表示飞机的相关属性。 结构体的成员赋值和输出是结构体常用的操作,例如给战斗机、轰炸机、运输机的结构体实例分配不同的值。资料中还提及了交换函数,通过引用参数(如`void fiddle(int in1, int& in2)`)可以确保函数内部对原变量的修改会影响到调用函数时的变量。 接着,资料讨论了程序设计的基本结构,如分支结构(if-else)和循环结构(for, while等)。同时,提到了函数和类的作用。函数是封装相关操作的逻辑单元,而类则是将数据和相关函数封装在一起,实现数据抽象和信息隐藏。类的构造函数用于初始化对象,析构函数则在对象销毁之前执行特定的清理工作。 面向对象编程(OOP)是C++的一个重要特性,它强调对象的封装、继承和多态性。资料中提到的“外部接口”和“特定的访问权限”是OOP中的关键概念,描述了对象如何与其他对象交互,以及如何保护其内部状态不被外部随意访问。继承和派生虽然在这里没有详细展开,但它们是OOP中实现代码重用和扩展的重要手段。 最后,资料提到了内联函数(inline)的使用,这是为了优化程序性能,减少函数调用带来的开销。通过将函数体放入类声明中或者使用`inline`关键字,可以尝试让编译器将函数展开到每个调用处。 这份资料涵盖了C++中的指针操作、数据结构、函数和类的设计,以及面向对象编程的基本思想,对于理解和掌握C++编程的基础知识非常有帮助。