C++中std::string是日常Coding中经常使用的一个类,使用起来非常方便,但是也存在一些弊端。
如下代码,参数传递的过程发生了内存分配(Memory Allocation)和内存拷贝。
void fun(const std::string& s) {
std::cout << s << std::endl;
}
const char* ch = "hello world";
// bad way, expensive if the string is l
代码如下://通过不同的方法,实现对所输入字符串的反转,可以很好地复习巩固 C++ 基础知识/*分析过程: 假设要使传递的字符串为常量const字符串,这样操作更加灵活,可直接传递字符串字面值进行反转,常见的解决方法就是,定义一个新的与传递过来字符串长度 相等的字符数组,然后进行字符串拷贝,把str字符按从左到右放置到字符数组中,然后采用循环来对字符数组中字符反转*//*第一种,采用以上思路解法,传递为const类型C风格字符指针,返回为char*类型*///直接使用字符数组赋值char*