使用类型同义词导致CS0246无法找到类型或命名空间名称....

时间:2017-02-27 09:55:34

标签: c# typedef using typename type-synonyms

我用短同义词命名了一个类型。 在下一行中,我尝试通过它的这个新的短名称以某种方式使用这种类型(无关紧要):

using A = SomeTypeName;
using B = A;

但是在第2行中,编译器没有看到名称“A”和&生成错误(请参阅标题)。 为什么呢?

1 个答案:

答案 0 :(得分:2)

ECMA-334 9.4.1使用别名指令说:

  

使用alias-directives的顺序没有   引用的namespace-or-type-name的重要性和解析   通过using-alias-directive不受其影响   using-alias-directive本身或其他using-directives   立即包含编译单元或命名空间体。 在其他方面   单词,using-alias-directive的namespace-or-type-name是   已解决,好像是直接包含编译单元或   namespace body没有using-directives using-alias-directive可以   但是会立即受到extern-alias-directives的影响   包含编译单元或命名空间体。