一个函数的参数是vector<string>类型,我该怎么传入实参
时间: 2024-03-05 13:53:24 浏览: 117
如果一个函数的参数是vector<string>类型,你可以按照以下方法来传入实参:
1. 直接传递一个vector<string>对象:
```c++
void func(vector<string> v) {
// 函数体
}
int main() {
vector<string> strVec = {"hello", "world"};
func(strVec); // 传递一个vector<string>对象
return 0;
}
```
2. 使用引用传递:
```c++
void func(vector<string>& v) {
// 函数体
}
int main() {
vector<string> strVec = {"hello", "world"};
func(strVec); // 传递一个vector<string>对象的引用
return 0;
}
```
使用引用传递可以避免在函数调用时拷贝vector<string>对象,减少了内存开销和时间消耗。同时,使用引用传递也可以在函数内部修改vector<string>对象。
3. 使用常量引用传递:
```c++
void func(const vector<string>& v) {
// 函数体
}
int main() {
vector<string> strVec = {"hello", "world"};
func(strVec); // 传递一个vector<string>对象的常量引用
return 0;
}
```
使用常量引用传递可以避免在函数调用时拷贝vector<string>对象,同时也可以防止函数内部修改vector<string>对象。
阅读全文