在阅读代码时,我有时会遇到在方法体内或在define语句中使用的反斜杠。我一直在寻找,但我无法弄清楚它的作用。我试图包含一个片段,但它太乱了,无法理解。我在第113-137行询问\
。
https://github.com/DarthTon/Blackbone/blob/master/src/BlackBone/Process/RPC/RemoteFunction.hpp
答案 0 :(得分:2)
这些是反斜杠,而不是正斜杠。它们用于表示#define
跨越多行,而不是在第一个换行符结束。
答案 1 :(得分:0)
在您的示例链接中,请注意以#define...
开头的行 116 。
行 116 - 136 每个都有你提到的尾随反斜杠。它们在每行源的末尾转义换行序列,有效地将下一行(就预处理器而言)与前一行结合起来。
因此,净影响是 116 到 137 的行看起来像预处理器的一条长行,这是#define DECLPFN...
在一个上定义所必需的(虚拟)线,也保持可读性。
答案 2 :(得分:0)
一行末尾的反斜杠\
表示当前行的续行符合以下行。在引用的特定情况下,它被用于允许预处理器宏的多行表达。预处理器要求在一行中完全定义宏。这可能使长宏定义难以理解;因此,换行符后缀为\
,以使预处理器能够正常工作,同时允许程序员可以读取文本。