如何在 C++ 中理解这样的代码 [re​​quest->headers().Method()->value().getStringView())]

How to understand code like this in c++ [request->headers().Method()->value().getStringView())]

我想把它减少到 [request->headers().getMethodValue())]

我是 C++ 的新手。有人可以告诉我如何理解这种类型的代码吗?有多个 . 运算符和 -> 运算符。我失去了 类 和其他人的踪迹。

有点不知所措。

实际上,这些类型的代码在支持面向对象编程的语言中很常见。

最可能的原因是,如果与 class 层次结构和继承很好地结合,单行将许多 if-else 语句简化为像您提到的那样的简洁语法。我建议你研究面向对象的编程风格,尤其是多态性来理解这种代码。

. 运算符用于访问对象内部的内容(函数、变量等)-> 运算符只是一个 . 运算符,但用于指针。在你的例子中,你调用 requestheaders 函数,returns 一个对象。然后为该对象调用 getMethodValue 函数。

答案已经解释过了,.运算符和->运算符是什么;

一个例子是;

class Test
{
    public:
      print( int i) { std::cout << i << std::endl; }
};

访问指针对象

Test* tPtr;

tPtr->print() // prints i;

访问对象;

Test tObj;

tObj.print() // print i;