读书人

初学者提的STL的一个低级有关问题请

发布时间: 2013-07-04 11:45:33 作者: rapoo

菜鸟提的STL的一个低级问题,请指教,请轻拍。。


#include <iostream>
#include <string>
using namespace std;

string fun()
{
string str ("123456789");
reverse(str.begin(),str.end());
return str;

}


int main()
{
fun();
}


【菜鸟提问】
1、为什么调用函数后,函数里面返回值始终为空?
2、我怎么改可以使得返回的结果为逆置之后的字符串?

[解决办法]
打印一下试试,应该已经逆序完成了。
cout << fun() << endl;
[解决办法]
你是怎么看的结果,怎么判断的返回结果为空?
[解决办法]
可能是编译器优化问题。

你之前用的调试版本,是debug版本吗? 如果是release的话编译器会有很多优化

比方说,它发现fun()是无后效作用的操作,就不执行了
[解决办法]
string str = fun(); 在面函数添加,自然retun 的str就返回赋值给str了

读书人网 >C++

热点推荐