C++ 函数 参数和返回值 的 传递方式
C++参数传递方式
1.基本类型
传值void func(int a){a=1;}
如需要传引用要指定void func(int & a){a=1;}
2.类类型
传值
class apple{public : int x=1;int y=2;
}; void func(apple a){a.x=10;
}int main(){apple ap;cout<<ap.x<<endl;//1func(ap);cout<<ap.x;//1return 0;
}
容器同理:
void func_v(vector<int> t){t.push_back(2);
}int main(){vector<int> t;t.push_back(1);cout<<t.size()<<endl;//1func_v(t);cout<<t.size();//1return 0;
}
如需要传引用要指定
class apple{public : int x=1;int y=2;
}; void func(apple & a){a.x=10;
}int main(){apple ap;cout<<ap.x;//1func(ap);cout<<ap.x;//10return 0;
}
容器同理:
void func_v(vector<int> & t){t.push_back(2);
}int main(){vector<int> t;t.push_back(1);cout<<t.size()<<endl;//1func_v(t);cout<<t.size();//2return 0;
}
C++返回值传递方式
1.基本类型
传值int rep(){ return ppp; }
如需要传引用需要指定int & rep(){ return ppp; }
2.类类型
传引用
vector<int> rev(){return t;
}
对于函数内部变量则传值
vector<int> rev(){vector<int > t;return t;
}