2016-08-05 104 views
0

我無法在我的項目中的其他文件夾中實例化類,即使它們具有相同的名稱空間。公共類無法在同一命名空間中訪問

namespace MyNameSpace 
{ 
     public class MyFirstClass 
     { 
      MySecondClass myClass = new MySecondClass(); 
     } 
} 

namespace MyNameSpace 
{ 
    public class MySecondClass {} 
} 

如果我將鼠標懸停我的鼠標移到「MyClass的」可變我得到的消息:

類型或命名空間名稱「MyClass的」找不到(你 缺少using指令或一個裝配參考?)

我想不通這是行不通的。我被困了好幾個小時。

+1

調用成員而不是'class'嗎?這是C#中的一個關鍵字,用它作爲類的成員*似乎引起混淆。 – David

+0

'class'是一個保留字。使用其他名稱。 – Rahul

+0

我實際上沒有使用「class」這個詞對不起,我應該在我的僞代碼中更加小心。 – maximus009

回答

1

classreserved keyword。只需重命名變量

namespace MyNameSpace 
{ 
     public class MyFirstClass 
     { 
      MySecondClass instance = new MySecondClass(); 
     } 
} 

namespace MyNameSpace 
{ 
    public class MySecondClass 
    { 

    } 
} 
+0

不客氣:)。正確的命名法總是有幫助的。 –

+0

@DavidL - 你是對的 - 這是如何學習:) –

+0

我實際上沒有使用「class」這個詞對不起,我應該更加小心我的僞代碼。 – maximus009

0

事實上,如果您願意,您可以給出一個變量名,該變量名也是保留關鍵字。

只需在變量名稱前加一個@,它會告訴編譯器忽略它也是一個關鍵字,並將其作爲一個變量處理。

namespace MyNameSpace 
{ 
     public class MyFirstClass 
     { 
      MySecondClass @class = new MySecondClass(); 
     } 
} 

namespace MyNameSpace 
{ 
    public class MySecondClass {} 
} 
+0

我實際上並沒有爲我的變量使用「class」這個詞,對不起,我應該更加小心我的僞代碼。 – maximus009