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

标签 c# unity3d preprocessor preprocessor-directive

我正在编写一些 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?

我是否缺少任何转义规则?

最佳答案

你根本不需要任何转义。 ( Online demo .)

#error/#warning 指令的消息(基本上)是指令之后和行尾之前的任何内容。 此行为也是 documented in the compiler source .

关于c# - 如何在 Unity3D 中的 c##error 预处理器中打印 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52443750/

相关文章:

algorithm - 六边形 map 查找是否有一些网格被包围算法

C# Webmail.Send方法如何更改人名

c# - 与 C# 中的 USB 相比,从映射的网络驱动器读取文件非常慢

c# - 在 C# 中用另一个对象实例替换对象实例

debugging - 无法在 Android 设备上调试 Unity 应用程序/Debug 和 profiler 无法正确连接到手机

c++ - 确定 C++0x 可用性

python - 您将如何在 Python 中执行相当于预处理器指令的操作?

css - Angular 元素中与 scss 和 css 混淆以及样式预处理器选项相关的错误

c# - 以编程方式远程管理 IIS 6 及更高版本

c# - 为什么我的秒表会在 1 秒后继续重置