zoukankan      html  css  js  c++  java
  • vs编译项目的bug关于"不明确的引用"

    今天在vs2003下编译项目,发现vs编译时的有一个盲区。
    情况如下:
    解决方案中有两个项目,分别是web项目TestWeb,和类库项目TestFacade。
    在TestFacade项目内定义一个枚举类型TestEnum(直接在TestFacade命名空间下定义).
    在TestWeb项目下面新建一个文件夹CommonCode,在该文件夹内新建类文件。在其中也定义一个TestEnum枚举。这个枚举将出现在TestWeb.CommonCode命名空间下。
    然后再TestWeb项目中另一个页面Test.aspx.cs中,引用下面命名空间。
    using TestFacade;
    using TestWeb.CommonCode;
    在该Test.aspx.cs中直接使用TestEnum枚举。编辑后会提示:"TestEnum"是不明确的引用。因为有两处都定义了TestEnum。

    但是,如果将TestWeb.CommonCode命名空间下的TestEnum枚举定义改动一下,将它的定义直接放置在TestWeb命名空间下。其它不变。再次编译后则完全通过了。系统没有再次提示:"TestEnum"是不明确的引用。而Test.aspx.cs中使用的TestEnum枚举被直接解释成在TestWeb命名空间下定义的TestEnum。
    又测试了vs2005,也有同样的问题。

    不知道是编译器的bug还是语法规则中本来就是这样定义的。希望有高人指点。
  • 相关阅读:
    react文本溢出hover气泡显示全部文本——JS判断文本溢出
    ecosystem.config
    git删除中间某次提交
    HTML5 新元素
    HTML5存储
    简述LVS(Linux虚拟服务器)
    简述线程池
    网络协议基础
    JVM常用性能检测工具
    线程间的“通信”方法
  • 原文地址:https://www.cnblogs.com/sutengcn/p/1031739.html
Copyright © 2011-2022 走看看