【发布时间】:2019-11-03 14:48:47
【问题描述】:
我几乎没有 C++ 经验。我的问题更多是关于确认我是否通过一些查询正确思考。我试图理解一个代码,它有以下行:
string ltrim(const string &);
我看到了以下答案: 1.What is the difference between "std::string const &s" and "const std::string &s"? 2.https://www.geeksforgeeks.org/stdstring-class-in-c/ 3.https://codereview.stackexchange.com/questions/32842/passing-parameters-by-reference
我知道按值调用和按引用调用的概念。
- 什么是“ltrim”?
在我看来,这是一个在这里声明的函数名,因为我知道 C++ 没有使用这个名称的预定义函数。我是否正确假设这意味着它是一个名为“ltrim”的“字符串”类型的函数,并且该函数有一个参数“常量字符串类型”。
但是,通常我们有这样的功能:
void abc (int &a)
其中 a 是一个变量。里面的变量是什么:
string ltrim(const string &);
因为 'const' 具有预定义的含义,而 'string' 是一种数据类型。参数中传入的变量是什么?
- 另外,如果没有变量,'&' 在这里做什么。我理解一些 w.r.t C++ 的引用调用,但我没有看到变量名,我不知道 s 用来传递什么。
我尝试在互联网上查找一些信息,但我无法找到一个用字符串解释这一点的地方。
【问题讨论】:
标签: c++ string c++11 pass-by-reference