原创 淺談C#中的同步鎖

閱讀數:8014本文介紹C# lock關鍵字,C#提供了一個關鍵字lock,它可以把一段代碼定義爲互斥段(critical section),互斥段在一個時刻內只允許一個線程進入執行,而其他線程必須等待。每個線程都有自己的資源,但是代碼區

原创 C#封裝

做應用是給用戶提供一些便利。做遊戲是給人類創建一個世界。通過訪問修飾修飾符。修飾符定義了一個類成員的範圍和可見性。修飾符有:1、  public:所有對象都可以訪問。(全部可見)2、  private:對象本身在對象內部可以訪問。(本類中

原创 Visual Studio Debug教程

與大多數IDE一樣,Visual Studio有兩個調試階段: 第一階段是發現並解決問題: Build 過程中的項目和編譯錯誤。 第二個階段是發現並解決Run過程中的動態錯誤。   Build Solution Build一個Solut

原创 C# 中的預處理器指令

一、什麼是預處理    預處理:(說的不專業或者通俗一點)就是你要做某件事情之前,把做這件事情需要的材料準備好。二、 預處理指令器使用注意點        在C# 中所有的預處理指令都是以#開始,預處理指令必須出現在行首或在這一行它的前面

原创 C#可空類型

C#特殊的數據類型(可空),nullable,可空類型表示其基礎值類型正常範圍內的值,再加上一個null值。比如Nullable<bool>變量可以被賦值爲true或false或null。用處:在處理數據庫和其他包含可能爲負值的元素數據類

原创 C#中的枚舉、結構體與類

注意:  namespace  定義命名空間的關鍵字                  enum定義枚舉的關鍵字                   class  定義類的關鍵字                   stuct  定義結構

原创 C#中的命名空間

一、 含義Namespace 一詞源於C++ 中。命名空間的目的就時給一個項目分組或給個範圍。相當於java中的package(包)。二、作用相同的命名空間中不能有名字相同的類,就像相同的方法體內不能有相同的變量名,即使在同一個項目中進行

原创 引用、弱引用與強引用

  一、引用        在計算機科學中,Reference(引用或參照)是指一個可以讓程序間接訪問於電腦存儲器或其他存儲設備中一特定數據的值,該數據可以爲變量或紀錄。引用不同於數據本身,一般而言,引用會是數據存儲於存儲器或存儲設備中的

原创 30秒瞭解I/O

文件:是存儲在磁盤中帶有指定名稱和目錄路徑的數據集合。當打開文件進行讀寫時,會變成一個流。流:通過通信路徑傳遞的字節序列。分爲輸入流和輸出流。(這裏的輸入輸出是相對於“我”而說的。就像新學面向對象理解面向對象中的“this”關鍵字一樣。)

原创 C#中的強引用和弱引用

我們平常用的都是對象的強引用,如果有強引用存在,GC是不會回收對象的。我們能不能同時保持對對象的引用,而又可以讓GC需要的時候回收這個對象呢?.NET中提供了WeakReference來實現。弱引用可以讓您保持對對象的引用,同時允許GC在

原创 漢羅塔(河內塔)問題的數學模型

問題引入: 給定A、B、C三個木樁子,給定由n個圓盤組成的塔(n個圓盤滿足從上到小大小遞減的順序套在A樁上),我們要做的是要將A樁子上的所有圓盤移動到B樁子上,要求每次只能移動一個圓盤,並且移動的全程滿足較大盤在較小盤的下面。 具體理解如

原创 Unity中的四元數類詳解【詳解】

一、簡介 Quaternion又稱四元數,由x,y,z和w這四個分量組成,是由愛爾蘭數學家威廉·盧雲·哈密頓在1843年發現的數學概念。四元數的乘法不符合交換律。從明確地角度而言,四元數是複數的不可交換延伸。如把四元數的集合考慮成多維實數

原创 Unity與C#的序列化與反序列化【轉載】

  序列化操作在我們的開發中使用的十分普遍,本文記錄了公司最近分享會上關於這部分的講解,希望能幫助大家對序列化有更系統的瞭解。 概念 序列化又稱串行化,是.NET運行時環境用來支持用戶定義類型的流化的機制。其目的是以某種存儲形式使自定義對

原创 遊戲開發中A*自動尋路算法解析

在遊戲中應用A*算法主要是以下步驟: 1.將地圖劃分包含多個等大區域的網絡:傳統做法是將地圖劃分爲多個等大的正方形小格子,或者也有將地圖劃分爲由菱形小格子組成;另外如果將地圖劃分爲多個凸多邊形情況下,便是NAV導航網格尋路的思路了。