繁体   English   中英

如何理解 c++ 中这样的代码 [request->headers().Method()->value().getStringView())]

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

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

我对 C++ 相当陌生。 有人可以告诉我如何理解这种类型的代码吗? 有多个. 运算符和->运算符。 我忘记了班级和其他人。

这有点压倒性。

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

最可能的原因是,如果与 class 层次结构和 inheritance 很好地结合使用,则单行将许多 if-else 语句减少为像您提到的那样的简洁语法。 我建议你学习面向对象编程styles,尤其是多态性来理解这种代码。

. 运算符用于访问 object 内部的东西(函数、变量等) ->运算符只是一个. 运算符,但用于指针。 在您的情况下,您调用requestheaders function 返回 object。 对于 object,然后调用getMethodValue function。

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

一个例子是;

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

访问指针 object

Test* tPtr;

tPtr->print() // prints i;

访问 object;

Test tObj;

tObj.print() // print i;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM