0
我有以下代碼:如何從int中刪除一點?
private enum Wall
{
Up = 0x0001,
Down = 0x0010,
Left = 0x0100,
Right = 0x1000,
}
private void Test()
{
int walls = 0x1111;
var wallsWithRightWallRemoved = walls | Wall.Right;
// wallsWithRightWallRemoved should now be this: 0x0111
}
我有一個可變稱爲壁其中0x1111表示4-布爾值基本相符。從牆上我想刪除右牆,所以我減去它(牆| Wall.Right;),但我得到「不能應用運算符& int類型的操作數」。 基本上我想結束一個包含0x0111的變量。
謝謝
'|'是按位或是,而不是減法。您正在*添加*右側牆,而不是刪除它。 – Luaan
我認爲你的錯誤的一部分是你的枚舉是缺少'[標誌]' –
@Scott ['[標誌]'不改變枚舉的實現,它僅用於顯示目的](http://stackoverflow.com/questions)/8447 /什麼,做最標誌 - 枚舉屬性均在-C)。 :) – CodeCaster