C++语言中,对象作为函数的参数和返回值的传递方式有 3 种:值传递、指针传递和引用传递。
1. 对象作为函数参数
        把实参对象的值复制给形参对象,这种传递是单向的,只从实参到形参。因此,函数对形参值做的改变不会影响到实参。
         例如: 对象作为函数参数应用。
#include <iostream>
using namespace std;
class Square //正方形
{
public:
    Square(double len) :length(len) //构造函数
    {}
    void set(double len) //修改边长
    {
        length = len;
    }
    double get()//获取边长的值
    {
        return length;
    }
    void show(); //输出面积
private:
	double length;//边长
};
void Square::show() //输出面积
{
    cout << "正方形面积:" << length * length << endl;
}
void Add(Square s)//只是修改形参的值,对实参没有影响
{
    double len = s.get() + 1; //len=原边长+1;
    s.set(len);//修改s的边长
}
int main()
{
    Square s(2);
    cout << "边长增加前:" << endl;
    s.show();
    Add(s);
    cout << "边长增加后:" << endl;
    s.show();
    return 0;
} 
 

对象占用内存都比较大,一般都不传对象本身,而改为传对象引用或者对象指针。



















