C# 加法運算子深度解析:數值、列舉、字串、委派四大語意與 IEEE 754 規則
加法運算子 + 在 C# 中經過大量多載,支援數值、列舉、字串、委派四大類型體系,各具獨特語意。 數值加法:預定義運算子與 IEEE 754 運算子簽章適用
C# 乘法運算子:整數與實數運算規則與溢位行為
乘法運算子 * 用於整數(int、long 等)與實數(float、double、decimal)的乘積運算。其運算規則遵循 CLI 算術指令語意,溢位行為受
C# 顯式型別轉換總覽:強制轉型、拆箱、三大分類與隱含轉換包含關係
顯式型別轉換(強制轉型)要求開發者以 (T)expr 明確標示目標型別。它包含所有隱含轉換(寫成顯式形式合法但多餘),並擴充至可能失敗、遺失資訊的場景。 核心
C# 顯式參考轉換:執行期型別檢查、InvalidCastException 與安全轉換模式
顯式參考轉換 發生在參考型別之間,且編譯器無法靜態保證安全的情況。必須在執行期檢查實際物件型別,失敗拋 InvalidCastException。 六大顯式參
C# 顯式列舉轉換:整數與列舉、列舉與列舉雙向轉換規則
顯式列舉轉換 涵蓋三類場景,本質上委託給底層元素型別的隱含或顯式數值轉換: 三類顯式列舉轉換 整數 → 列舉:sbyte, byte, short, ush
C# 顯式數值轉換完整規則:溢位檢查、精度捨入與例外處理
顯式數值轉換(強制轉型)用於不存在隱含轉換的數值型別之間。開發者必須以 (TargetType)value 語法明確表達意圖,並承擔資訊遺失或執行期例外的風險。
C# 隱含型別轉換總覽:數值、列舉、參考三大類規則與應用場合
C# 的隱含轉換是編譯器預設允許、無需語法標記、且保證執行期不拋出例外、不遺失資訊的型別轉換。本文統整第 6 章三大子類別的完整規則。 三大隱含轉換分類 6
C# 隱含參考轉換完整規則:繼承、介面、陣列協變與 Null 轉換
隱含參考轉換 是編譯器在靜態型別系統層面判定安全、無需執行期檢查的參考型別轉換。核心原則:來源型別的執行期物件一定能作為目標型別使用。 八大類隱含參考轉換
C# 隱含列舉轉換:唯一允許整數 0 轉換為任意列舉型別
隱含列舉轉換 是 C# 型別系統中極其特殊的一條規則:僅允許十進位整數常值 0 隱含轉換為任意列舉型別。其他任何整數值(包括變數 0)都不適用。 程式碼驗證
C# 隱含數值轉換完整表:從低精度到高精度的安全轉換規則
隱含數值轉換 是編譯器自動執行、無需語法標示、且保證不丟失數值大小的轉換。核心原則:從較小範圍/精度的型別轉向較大範圍/精度的型別。 完整隱含轉換對照表 來
C# 常數聲明完整指南:語法、修飾詞、型別限制與多重宣告
常數 是編譯期確定、執行期不可變更的值。與變數不同,常數的值在編譯階段即內嵌至呼叫端 IL 中,因此不能用於參考型別(除 string 與 null),也無法表
C# 變數分類全解析:七大類型的生命週期、作用域與初始化規則
C# 依據宣告位置與修飾詞,將變數劃分為七大類別。理解各類別的生命週期、作用域與初始化語意,是撰寫正確、高效程式碼的關鍵。 七大變數類型對照表 類別關鍵字/
C# 變數命名規則與最佳實務:從語法限制到可讀性原則
變數名稱是程式碼可讀性的第一道防線。C# 對識別碼有嚴格的語法規範,同時社群也沉澱出一套約定俗成的命名慣例。本文同時涵蓋「編譯器強制規則」與「工程實務建議」。
C# 裝箱轉換完整指南:從實值類型到物件的隱含與顯式轉換
裝箱 是 C# 類型系統中連結實值類型與引用類型的關鍵機制。它指將一個實值類型(如 int、struct、enum)隱含或顯式轉換為 object 類型,或該實
C# 引用類型詳解:類別、委派、陣列與介面
在 C# 的類型系統中,除了實值類型之外,引用類型 是另一大核心支柱。所謂「引用」,意指變數並不直接儲存資料本身,而是儲存指向資料所在記憶體位址的參考。簡單來說
C# 型別系統全景:值型別 vs 參考型別、簡單型別、結構、列舉、Tuple 與記憶體模型
前言:資料型別是程式的骨架 每個變數宣告必須指定型別,編譯器才能配置正確記憶體。C# 型別系統分為兩大派系: 一、值型別 — 直接包含資料 儲存於 Stack