正如标题所说,我试图使用在名称空间中声明的类,该名称空间的名称中包含“base”。 想象一下这样的情况:
open Foo.base.Bar
在C语言中,我只会在基之前使用@,但F似乎忽略了这一点,并认为@是用于列表连接的中缀运算符。 由于命名空间属于第三方库,我无法修改,是否有方法仍然可以从f_访问它?
在f_中,可以通过在两对``符号之间包含特殊名称来实现类似的功能。下面的技巧可以做到:
open Foo.``base``.Bar
这比c中的更灵活一些-名称几乎可以包含任何内容,因此您可以定义名称中带有空格的成员:
let ``some name!`` = 42