关于Vector作为函数返回值的一些问题
在C++11中想要使用一个比如 vector<string> 数据类型作为返回值时,并且希望通过传值的方式写函数,应当注意vector在函数局部定义后会被系统释放,当在main函数中想调用这个刚刚写出新函数时会得到一个空的vector数组。
在函数作用域结束后会自动调用清空的方法。
解决方案:
将vector定义在main函数中,每次需要就传vector的引用,这样就可以保持vector内数据持久化,不被清空释放。
在C++11中想要使用一个比如 vector<string> 数据类型作为返回值时,并且希望通过传值的方式写函数,应当注意vector在函数局部定义后会被系统释放,当在main函数中想调用这个刚刚写出新函数时会得到一个空的vector数组。
在函数作用域结束后会自动调用清空的方法。
解决方案:
将vector定义在main函数中,每次需要就传vector的引用,这样就可以保持vector内数据持久化,不被清空释放。