C++指针、引用传参操作对象----测试
2017-02-22 07:17
211 查看
#include <iostream> using namespace std; class HelloWorld{ public : void printMsg(){ cout << msg << endl; } void setMsg(string msg){ this->msg = msg; } private: string msg; }; void printNum(HelloWorld); void printNum1(HelloWorld &); void printNum2(HelloWorld *); int main() { HelloWorld hello; hello.setMsg("begin"); printNum(hello); hello.printMsg(); //begin printNum1(hello); hello.printMsg(); //from printNum1 printNum2(&hello); hello.printMsg(); //from printNum2 } void printNum(HelloWorld x){ x.setMsg("from printNum"); } void printNum1(HelloWorld &x){ x.setMsg("from printNum1"); } void printNum2(HelloWorld *x){ x->setMsg("from printNum2"); }
指针与引用的区别:
指针:是存放变量地址的一个变量,它可以被改变,包括 其所指向的地址 的改变和 其指向的地址中 所存放的数据的改变。
操作p时,是p的值,p值是存储的实参的内存地址整数,改变p并未改变实参的值。操作*p时是指向的内存地址,改变*p会影响实参的值。
引用:引用是一个别名,它的存在具有依附性,是对实参的引用。对形参的操作,会改变实参。
相关文章推荐
- C++指针、引用传参操作对象----测试
- C++指针、引用传参操作对象----测试
- C++指针与引用(一):函数传参,是该传对象,还是传指针,抑或是引用
- C++ 基础:传参的基本形式-基本类型,对象,引用和指针
- [c++]对象指针,引用的操作
- c++中的类对象指针、对象引用、this指针
- C++引用、对象、和指针的区别
- C++异常对象传递的时候,使用普通对象还是指针还是引用(使用引用)
- C++ 引用/指针/对象名调用
- C++-const_cast只能用于指针和引用,对象的const到非const可以用static_cast
- Effective C++ Item 28 避免返回对象内部数据的引用或指针
- C++中的临时对象,对临时对象的引用,和临时对象的指针
- [C++对象模型][2]指针与引用
- [C++]变量存储类别,指针和引用,类与对象,继承与派生的一些摘要
- c++ 对象指针参数和对象引用参数02
- C++的引用计数j控制智能指针——>Java的引用计数管理共享对象
- C++中的对象指针和对象引用
- C++新特性(类与对象的各种指针和引用)
- C++中指针,引用与const,以及const中的临时量对象的探讨
- [C++对象模型][2]指针与引用