[問題] class 跟 struct
自己寫的小程式
能把輸入的字母做排列組合
EX:
輸入:ABB
輸出:ABB BAB BBA
http://www.badongo.com/file/21299172
裡面定義一個叫做字母的class
用來記錄使用者輸入的字母,以及上層遞迴是否有「取走」這個字母
public class 字母
{
public char 字母元件;
public bool 被取走;
public 字母(char a)
{
字母元件 = a;
被取走 = false;
}
public void 拿走()
{
被取走 = true;
}
public void 放回()
{
被取走 = false;
}
}
之後,會建立一個List<字母>欄位,並在建構子把使用者輸入的字母放進去
List<字母> 取樣陣列 = new List<字母>();
public 字元排列(string 字元集)
{
foreach (char 輸入字母 in 字元集)
{
取樣陣列.Add(new 字母(輸入字母));
}
}
for (int i = 0; i < 取樣陣列.Count; i++)
{
(中略)................
取樣陣列.ElementAt(i).拿走();
(中略)................
}
在這裡,把class改成struct會造成錯誤
在執行「取樣陣列.ElementAt(i).拿走();」時
public bool 被取走; 並不會變成true
我在想.... 可能是struct是實質類型、class是參考類型的關係
我想請問,如果在這種狀況下,硬要把「字母」定義成struct
要怎麼寫?
--
◢ 鄉民啊!鄉民! 請告訴我誰是最純潔的人!
◢█ │
PTT │
██ :就是你!Snow White F23ko!│
█◤ ╯
◤ ﹨(╯▽╰ )∕
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.27.109.99
推
03/17 18:12, , 1F
03/17 18:12, 1F
→
03/17 18:19, , 2F
03/17 18:19, 2F
→
03/17 18:20, , 3F
03/17 18:20, 3F
→
03/18 23:00, , 4F
03/18 23:00, 4F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 3 篇):