C++ 学习之路(3):向函数传递对象
来源:互联网 发布:自学英语口语的软件 编辑:程序博客网 时间:2024/05/22 13:47
// 向函数传递对象#include <iostream>using namespace std;class aClass{ public: aClass(int n) { i = n; } void set(int n) { i = n; } int get() { return i; } private: int i;};// 对象作为函数的参数(传值)void sqr1(aClass ob){ ob.set(ob.get()*ob.get()); cout<<"Copy of obj has i value of "; cout<<ob.get()<<endl;}// 对象指针作为函数的参数(传址)void sqr2(aClass *ob){ ob->set(ob->get()*ob->get()); cout<<"Copy of obj has i value of "; cout<<ob->get()<<endl;}// 对象的引用作为函数的参数void sqr3(aClass &ob){ ob.set(ob.get()*ob.get()); cout<<"Copy of obj has i value of "; cout<<ob.get()<<endl;}int main(){ aClass obj(10); cout<<"----对象 作函数参数----"<<endl; sqr1(obj); cout<<"But, obj.i is unchanged in main:"; cout<<obj.get()<<endl; cout<<"----对象指针 作函数参数----"<<endl; sqr2(&obj); cout<<"Now, obj.i in main() has been changed. :"; cout<<obj.get()<<endl; cout<<"----对象的引用 作函数参数----"<<endl; // 上面操作已将对象obj的数据成员i改变,此处改回。 obj.set(10); sqr3(obj); cout<<"Now, obj.i in main() has been changed. :"; cout<<obj.get()<<endl; return 0;}
0 0
- C++ 学习之路(3):向函数传递对象
- 向函数传递对象
- 向函数传递类对象:
- C++如何向函数传递对象
- c 向函数传递多维数组
- c 向函数传递多维数组
- C Primer Plus学习 四十六 向函数传递结构信息 (一)
- C Primer Plus学习 四十七 向函数传递结构信息 (二)
- 向函数传递数组
- C++学习 向基类构造函数传递参数
- 管理线程之向线程函数传递参数
- Java之函数值传递和对象传递
- 如何向线程传递对象
- react学习之路(2.1)----数据传递(state,props(父级向子级传递数据))
- Android开发学习之路-回调实现Service向activity传递数据
- JNI学习积累之三 ---- 操作JNI函数以及复杂对象传递
- JNI学习积累之三 ---- 操作JNI函数以及复杂对象传递
- JNI学习积累之三 ---- 操作JNI函数以及复杂对象传递
- C++ 学习之路(2):对象数组和指针
- 阿里一面准备工作<java部分>
- Python——域名解析成IP地址
- 积分图(用于计算块像素差异的快速方法)
- [bzoj3676][APIO2014]回文串
- C++ 学习之路(3):向函数传递对象
- 猜拳游戏案例
- Java中堆内存与栈内存分配浅析
- CSS 媒体查询
- 分页查询Oracle语法
- 项目开发流程-经典版
- 操作说明
- android processBar and RatingBar
- 知识学习网站