C++指针教程:类对象操作与Set/Print方法
需积分: 27 130 浏览量
更新于2024-08-23
收藏 8.78MB PPT 举报
在谭浩强的经典C++教程中,主要讲解了如何在C++编程中定义类的指针以及如何通过指针操作类的对象。首先,我们来看一个名为`A`的简单类,它有两个浮点数成员变量`x`和`y`,并提供了`Sum()`、`Set(a, b)`和`Print()`三个公共成员函数,分别用于求和、设置坐标值和打印坐标值。
1. **定义类的指针**:
在C++中,`*`符号用来表示指针。`A *p;`这一行代码定义了一个指向`A`类对象的指针`p`。`*`前的`A`表明p是一个指向`A`类型对象的指针。
2. **赋值和引用对象**:
`p=&a1;`这里,`&`操作符用于获取`a1`对象的地址,然后将这个地址赋给指针`p`,使得`p`现在指向`a1`这个对象。
3. **通过指针调用成员函数**:
`p->Set(2.0, 3.0);`通过`->`运算符,我们可以直接在指针`p`上调用`A`类的成员函数`Set()`,传入新的坐标值。这相当于间接操作`a1`对象的成员。
4. **访问和输出成员变量**:
`p->Print();`同样通过指针调用`Print()`函数,打印`a1`的`x`和`y`值。`cout<<p->Sum()<<endl;`使用指针访问`Sum()`方法,输出`x`和`y`的和。
5. **动态创建对象和引用**:
接下来,`a2.Set(10.0, 20.0);`创建了另一个`A`对象`a2`,并设置了新的坐标。`a2.Print();`单独调用`a2`的`Print()`函数。
6. **C++语言的历史和发展**:
教程背景介绍中提到,C++语言起源于1972年的C语言,由Dennis Ritchie和Brian Kernighan开发,后来C++是在C的基础上发展和完善的。C语言具有结构化、灵活性高、移植性强和有一定局限性的特点,C++继承了这些优点并添加了面向对象特性。
7. **C++的特点**:
C++结合了高级语言的易读性和灵活性与低级语言的高效性,支持丰富的运算符和数据结构,以及良好的程序移植性。同时,它的语法结构虽然相对宽松,但也要求程序员对语法规则有深入理解,尤其是对于初学者来说,调试可能会遇到挑战。
这段教程内容主要涵盖了C++中基本的指针概念,如何通过指针操作类对象,以及C++语言的历史和特点。学习者可以通过实践这些概念,更好地理解和掌握C++编程。
2011-01-04 上传
2014-08-04 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
getsentry
- 粉丝: 28
- 资源: 2万+
最新资源
- BottleJS快速入门:演示JavaScript依赖注入优势
- vConsole插件使用教程:输出与复制日志文件
- Node.js v12.7.0版本发布 - 适合高性能Web服务器与网络应用
- Android中实现图片的双指和双击缩放功能
- Anum Pinki英语至乌尔都语开源词典:23000词汇会话
- 三菱电机SLIMDIP智能功率模块在变频洗衣机的应用分析
- 用JavaScript实现的剪刀石头布游戏指南
- Node.js v12.22.1版发布 - 跨平台JavaScript环境新选择
- Infix修复发布:探索新的中缀处理方式
- 罕见疾病酶替代疗法药物非临床研究指导原则报告
- Node.js v10.20.0 版本发布,性能卓越的服务器端JavaScript
- hap-java-client:Java实现的HAP客户端库解析
- Shreyas Satish的GitHub博客自动化静态站点技术解析
- vtomole个人博客网站建设与维护经验分享
- MEAN.JS全栈解决方案:打造MongoDB、Express、AngularJS和Node.js应用
- 东南大学网络空间安全学院复试代码解析