struct是一種用來宣告結構的關鍵字,在結構中包含相關 變數,可將結構視為變數群組
我們用struct也可以提高程式的可讀性
宣告方式:
[存取修飾詞] struct [結構名稱]
{
[存取修飾詞] [資料型別] [變數名稱]
}
存取修飾詞請參考MSDN
資料型別請參考MSDN
使用方式:
結構名稱.變數名稱="abc"//字串型別要用雙引號包,數字型別 直接打數字
以下為struct範例程式碼及註解
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Struct_ex
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public struct Phone_Book
{
public string Name;
public string Number;
public DateTime PublishDate;
public int Cost;
}
private void btnAdd_Click(object sender, EventArgs e)
{
Phone_Book PB;
PB.Name = cName.Text;
PB.Number = txtAuthor.Text;
PB.PublishDate = Birthday.Value;
string msg = "";
msg = msg + "姓名:" + PB.Name + "\n";
msg = msg + "電話:" + PB.Number + "\n";
msg = msg + "出生日期:" + PB.PublishDate.ToShortDateString() + "\n";
MessageBox.Show(msg, "struct範例");
}
}
}
能否請教一下
struct 跟 class 的差異?
我幾乎都用class 不用 struct
我知道有差
但久沒用struct 了所以忘了差異
struct class
使用static修飾詞 否 可
型別系統 value type reference type
預設參數傳遞方式 call by value call by reference
實體存放記憶體在 stack heap
設定欄位初始值 否 是
這是書上的比較表
class 與 struct 的差別 - Kelp Code
這連結你也可以看看
寫的不錯
這題高普考就考倒一群人
我不去看差別,網路上有很多資源
其他還有OO的特性
他的生命週期..
高考這一題出個25分
裡面4-5小題
還有這二種使用情境?
什麼程式用Class,什麼程式用struct
我寫程式沒考慮那麼細,所以都用Class
坦白說這二種的效能跟資源占的空間也差非常大