Delphi 有没有办法避开评论的结束括号?

Delphi 有没有办法避开评论的结束括号?,delphi,escaping,comments,Delphi,Escaping,Comments,我正在向我的Delphi代码添加注释以获取文档。我试图记录的内容之一是JSON结构,因此我试图将示例JSON数据注释到代码中。然而,JSON广泛使用弯曲的括号{},这恰好也用于Delphi中的注释 因此,我无法找到添加这些评论的方法。通常对于文档注释块,我使用{},例如: { This unit does this and that. Use TSomeComponent to do bla bla } 当我尝试记录JSON数据时,结束括号}会结束注释-即使该行的前缀是单行注释/,因

我正在向我的Delphi代码添加注释以获取文档。我试图记录的内容之一是JSON结构,因此我试图将示例JSON数据注释到代码中。然而,JSON广泛使用弯曲的括号
{}
,这恰好也用于Delphi中的注释

因此,我无法找到添加这些评论的方法。通常对于文档注释块,我使用
{}
,例如:

{
  This unit does this and that.

  Use TSomeComponent to do bla bla
}
当我尝试记录JSON数据时,结束括号
}
会结束注释-即使该行的前缀是单行注释
/
,因此即使这样也不起作用:

{
  This is how the JSON structure looks:

//    {
//      "some_string": "value",
//      "some_object": {
//        "something": 123
//      }, //<-- Compiler detects this comma
//      "something_else": "some other string"
//    }
}
{
以下是JSON结构的外观:
//    {
//“某些字符串”:“值”,
//“某些对象”:{
//“某物”:123

//},//我在键入此问题时发现了解决方案,所以现在我以问答方式回答它

当注释块第一次以上述问题中的代码开始时,它以一个左括号开始
{
。因此,编译器正在拼命寻找一个结束括号,即使该结束括号位于另一个注释代码行中。但是,如果此注释块中的每一行都以两个斜杠
/
开头,而不是一个开始括号
{
,那么编译器将不会寻找结束括号
}
。因此,与其使用上述问题中的代码,不如这样编写:

//  This is how the JSON structure looks:
//  
//    {
//      "some_string": "value",
//      "some_object": {
//        "something": 123
//      },
//      "something_else": "some other string"
//    }
因此,只要您不以开始括号开始注释块,那么编译器在找到结束括号时不会尝试结束注释块

另外,使用
(**)
也可以,只要你在已经使用
{
之后不使用它。用
(*
*)
括住整个块,编译器就会忽略里面的任何
{
}
,就像这样:

(*
  This is how the JSON structure looks:

    {
      "some_string": "value",
      "some_object": {
        "something": 123
      },
      "something_else": "some other string"
    }
*)

本质上,从您开始一条注释的那一刻起,无论是
/
{
还是
(*
),它都将忽略任何其他类型注释的进一步打开-它将只查找自己注释类型的结尾。因此
/
将查找行的结尾,
{
将查找
}
,和
(*
将查找
*)

很高兴看到实际行动:-)@TLama我刚才想的几乎完全一样,看问题中的逗号也从注释中排除,在回答中它是注释的一部分,就像在Delphi:D中一样