C++程序设计:利用指针访问私有数据成员
需积分: 12 86 浏览量
更新于2024-08-19
收藏 8.66MB PPT 举报
"利用指针访问私有数据成员-c++程序设计(谭浩强完整版)"
在C++编程中,类是数据和操作这些数据的方法的集合,它允许我们定义自定义的数据类型。类中的数据成员可以被声明为私有的(private),这意味着它们在类的外部不能直接访问。然而,为了在类的外部操作私有数据成员,我们可以使用公有成员函数(public member function)或者通过指针来实现间接访问。
在这个例子中,我们看到一个名为`Test`的类,它有两个私有数据成员`x`和`y`。`Test`类提供了三个公共方法:`Setxy()`,`Getxy()`以及`Printxy()`。
1. `Setxy(int a, int b)`函数用于设置`x`和`y`的值。这个函数接收两个整数参数`a`和`b`,并将它们分别赋值给`x`和`y`。
2. `Getxy(int *px, int *py)`函数允许外部代码获取`x`和`y`的值。它接收两个指向整数的指针`px`和`py`,并将`x`和`y`的值分别赋给它们所指向的变量。
3. `Printxy(void)`是一个简单的打印函数,它直接输出`x`和`y`的值。
在`main`函数中,我们创建了两个`Test`类的对象`p1`和`p2`。首先,我们使用`p1.Setxy(3, 5)`设置了`p1`的`x`和`y`的值。然后,我们声明了两个整数变量`a`和`b`,并使用`p1.Getxy(&a, &b)`将`p1`的`x`和`y`的值分别赋给了`a`和`b`。最后,我们打印了`a`和`b`的值,这应该与`p1`的`x`和`y`相同,即输出`3`和`5`。
这个程序展示了如何通过指针间接访问私有数据成员,这是C++中封装概念的一个实际应用。封装是面向对象编程的核心原则之一,它确保了数据的安全性,防止了意外的修改。通过提供公共接口来访问私有数据,我们可以在不影响类的内部结构的情况下,控制对数据的访问,同时保持代码的整洁和易于维护。
在C++的历史和发展中,C++是在C语言的基础上扩展而来的,增加了类、模板、异常处理等面向对象特性。C++的设计目标是提供高效的代码执行,同时保持程序的可移植性。它的语法结构相对宽松,这使得程序员有更大的灵活性,但也可能增加学习和调试的难度。尽管如此,C++因其强大的功能和广泛的应用范围,仍然是软件开发中的重要工具。
114 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
劳劳拉
- 粉丝: 21
- 资源: 2万+
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录