如何在 Unity3D 中的 c# #error 预处理器中打印 URL?



我正在编写一些Unity模块。

其中一些相互依赖,因此我想打印出一个错误,包括获取丢失模块的 URL。

我试过这个:

#if !THIS_MODULE
#define THIS_MODULE
#endif
#if !REQUIRED_MODULE
#error This Module requires the RequiredModule module
#error Please get it from "https://example.com"
#endif

如果缺少所需的模块,则第一行只会按预期在 Unity3D 控制台中打印出来

error CS1029: #error: 'This Module requires the RequiredModule module'

但第二行只打印

error CS1029: #error: 'Please get it from "https:'

  • 我尝试了有和没有"'

    除了将"'添加到输出之外,这不会改变任何东西

  • 我试过了

    #error Please get it from "https://example.com" 
    

    但比它打印

    #error: 'Please get it from "https://example.com"'
    

如何在 Unity 中使用#error预处理器正确打印 URL?

我缺少任何转义规则吗?

你根本不需要任何转义。(在线演示。

#error/#warning指令的消息(基本上(是指令之后和行尾之前的任何内容。 此行为也记录在编译器源代码中。

最新更新