2016-03-08 32 views
-3

下面是確切的錯誤消息。C#Visual Studio關於轉換出現錯誤,我不知道如何修復

錯誤1無法隱式轉換類型 'Monopolymakesmecryplzt ___ stahp.alsothedeathofme.GoSpace' 到 'Monopolymakesmecryplzt ___ stahp.alsothedeathofme.GameSpace' C:\用戶\吉爾\文檔\ Visual Studio的2013 \項目\ SuperAdventure \ Monopolymakesmecryplzt; - ; stahp \ Monopolymakesmecryplzt; - ; stahp \ Form1.cs中252 29 Monopolymakesmecryplzt; - ; stahp

This is a picture of the code throwing errors up

+0

你的代碼在哪裏?很顯然,你正試圖將某些東西分配給錯誤類型的變量。 –

+0

請將您的問題的代碼添加爲** text **而不是圖片。如果他們不得不點擊圖片,斜視閱讀代碼,然後在自己的計算機上鍵入代碼以文本/修復代碼,它會讓人們很難幫助您。非常感謝。 –

回答

2

這樣看來,spaceArrayGameSpace對象的數組。大概是用類似的東西創建的:

GameSpace[] spaceArray = new GameSpace[someIntValue]; 

一個數組只能容納指定類型的元素。在這種情況下,GameSpace對象。例如:

spaceArray[0] = new GameSpace(); 

但是,你試圖把其他類型的對象有:

spaceArray[0] = new GoSpace(); 

這是當然的,無效的。

從代碼中不清楚你在嘗試使用來完成整體。但錯誤僅僅是因爲你不能在C#中混合使用類似的類型。

+0

*但是錯誤僅僅是因爲你不能在C#中混合類似這樣的類型*,這並不完全正確。如果'GoSpace'繼承自'GameSpace',那麼它就會起作用。但由於OP拒絕提供任何代碼,我們不知道這是否是他們的目標。 –

+0

@MattBurland:那是因爲'GoSpace'會是'GameSpace'的一個實例。但事實並非如此。這不是混合類型,而是使用有效的類型。 – David

+0

不,GoSpace將是GoSpace的一個實例。這混淆了術語,仍然沒有改變'spaceArray [0] = new GoSpace()'當然不是*無效的事實。這可能是絕對有效的(但顯然不適用於OP代碼)。 –

相關問題