Time of Update: 2018-12-07
Time of Update: 2018-12-07
簡介序列化是指將對象執行個體的狀態儲存到儲存媒體的過程。在此過程中,先將對象的公用欄位和私人欄位以及類的名稱(包括類所在的程式集)轉換為位元組流,然後再把位元組流寫入資料流。在隨後對對象進行還原序列化時,將建立出與原對象完全相同的副本。在物件導向的環境中實現序列化機制時,必須在易用性和靈活性之間進行一些權衡。只要您對此過程有足夠的控制能力,就可以使該過程在很大程度上自動進行。例如,簡單的二進位序列化不能滿足需要,或者,由於特定原因需要確定類中那些欄位需要序列化。以下各部分將探討 .NET
Time of Update: 2018-12-07
在c++中,為瞭解決一些頻繁調用的小函數大量消耗棧空間或者是叫棧記憶體的問題,特別的引入了inline修飾符,表示為內嵌函式。 可能說到這裡,很多人還不明白什麼是棧空間,其實棧空間就是指放置程式的局部資料也就是函數內資料的記憶體空間,在系統下,棧空間是有限的,如果頻繁大量的使用就會造成因棧空間不足所造成的程式出錯的問題,函數的死迴圈遞迴調用的最終結果就是導致棧記憶體空間枯竭。 下面我們來看一個例子:#include <iostream> #include <string&g
Time of Update: 2018-12-07
Time of Update: 2018-12-07
猜猜看以下程式的輸出是什麼?using System;using System.Windows.Forms;namespace Skyiv.Ben.Test{ sealed class MainTest { static void Main() { Label lblOut = new Label(); lblOut.Text = null; Console.WriteLine("{0} {
Time of Update: 2018-12-07
其實 web.config中就有配置 <globalization requestEncoding="gb2312" responseEncoding="gb2312" /> <!--<pages validateRequest="false"/>--><httpRuntime maxRequestLength="20000"/>c#
Time of Update: 2018-12-07
微軟webbrowser控制項也就是IE外掛程式,他的所有功能就像IE類似,當然設定也是一樣的,下面介紹下webbrowser如何設定代理,可不要用這個對抗廣告聯盟哦You can change the proxy with InternetSetOption method from the wininet.dll, here is a example to set the proxy:using System.Runtime.InteropServices;Public struct
Time of Update: 2018-12-07
大家在實際工作學習C#的時候,可能會問:為什麼我們要為一些已經存在的功能(比如Windows中的一些功能,C++中已經編寫好的一些方法)要重新編寫代碼,C#有沒有方法可以直接都用這些原本已經存在的功能呢?答案是肯定的,大家可以通過C#中的DllImport直接調用這些功能。 DllImport所在的名字空間 using System.Runtime.InteropServices;
Time of Update: 2018-12-07
·關於C#中timer類 在C#裡關於定時器類就有3個 1.定義在System.Windows.Forms裡 2.定義在System.Threading.Timer類裡 3.定義在System.Timers.Timer類裡 System.Windows.Forms.Timer是應用於WinForm中的,它是通過Windows訊息機制實現的,類似於VB或Delphi中的Timer控制項,內部使用API SetTimer實現的。它的主要缺點是計時不精確,而且必須有訊息迴圈,Console
Time of Update: 2018-12-07
前兩篇簡單介紹了線程同步lock,Monitor,同步事件EventWaitHandler,互斥體Mutex的基本用法,在此基礎上,我們對 它們用法進行比較,並給出什麼時候需要鎖什麼時候不需要的幾點建議。最後,介紹幾個FCL中安全執行緒的類,集合類的鎖定方式等,做為對線程同步系列的完善 和補充。 1.幾種同步方法的區別 lock和Monitor是.NET用一個特殊結構實現的,Monitor對象是完全託管的、完全可移植的,並且在作業系統資源要求方
Time of Update: 2018-12-07
C#如何在webBrowser1控制項通過TagName,Name查//防止頁面多次重新整理頁面執行 if (num == 1) { string GetUserName = System.Configuration.ConfigurationSettings.AppSettings["Y2000UserName"].ToString(); string GetUserPassword = S
Time of Update: 2018-12-07
尋找/列出進程很容易,但幹掉進程得藉助系統命令ntsd.exe,詳細用法見下面的代碼 : Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-07
隊列(Quene)的特徵就是“先進先出”,隊列把所有操作限制在"只能線上性結構的兩端"進行,更具體一點:添加元素必須線上性表尾部進行,而刪除元素只能線上性表頭部進行。先抽象介面IQuene<T>namespace 棧與隊列{ public interface IQuene<T> { /// <summary> /// 取得隊列實際元素的個數 /// </summary> /// &
Time of Update: 2018-12-07
5、堆排序(HeapSort)在接觸“堆排序”前,先回顧一下資料結構C#版筆記--樹與二叉樹 ,其中提到了“完全二叉樹”有一些重要的數學特性:就是一顆完全二叉樹,如果每個節點按從上到下,從左至右標上序號,則可以用數組來實現順性儲存,同時其序號:1、如果i>1,則序號為i的父結節序號為i/2(這裡/指整除) 言外之意:整個數組前一半都是父節點,後一半則是分葉節點2、如果2*i<=n(這裡n為整顆樹的節點總數),則序號為i的左子節點序號為2*i3、如果2*i +1
Time of Update: 2018-12-07
特性(Attribute)是微軟在.Net中自創的一種新技術,對於很多初學者來講,特性一直是一塊難啃的骨頭。既然弄不懂,那我們就暫時繞過它吧,回想一下我們在寫代碼時通常都要求寫注釋,為了是讓別人或自己以後能看得懂,但是這個注釋是寫給“人”看的,突發奇想一下:我們能不能寫出一種注釋,給c#編譯器看,比如我們在某些代碼上打個標記,讓編譯器看到這些標記後,做出不同的反應?其實...這就是特性,比如我們定義一個常規的類public class Product{ public string Name
Time of Update: 2018-12-07
上一篇學習了"順序表(SeqList)",這一篇來看下“單鏈表(LinkList)”。在上一篇的最後,我們指出了:順序表要求開闢一組連續的記憶體空間,而且插入/刪除元素時,為了保證元素的順序性,必須對後面的元素進行移動。如果你的應用中需要頻繁對元素進行插入/刪除,那麼開銷會很大。 而鏈表結構正好相反,先來看下結構:每個元素至少具有二個屬性:data和next。data用來存放資料,而next用來指出它後面的元素是誰(有點“指標”的意思)。鏈表中的元素,通常也稱為節點Node,下面是泛型版本的No
Time of Update: 2018-12-07
背景:國慶長假在老家無法上網,無聊之餘從以前的舊箱子裡刨出了一本古董級的"C程式設計",1996年版,沒錯,就是譚浩強主編的那本經典教材,翻了幾天,又有一種想重溫的衝動。===============================================回來上班後down了一個turbo3.0的壓縮包安裝檔案,即發現這種16位作業系統下的老傢伙,在win7
Time of Update: 2018-12-07
前公司在製作播客系統(Web程式)中,用到從視頻功能.下邊是CatchImg方法,可從大多數的視頻檔案中成功,大家可測試;如果不成功,大多是因為視頻本身的問題,如編碼通訊協定或加了密.但從線上錄製的視頻Flv檔案中,還未發現失敗;/// <summary>/// @從視頻檔案,產生在視頻檔案所在檔案夾/// 在Web.Config 中需要兩個前置配置項:/// 1.ffmpeg.exe檔案的路徑/// <add key="ffmpeg"
Time of Update: 2018-12-07
C#中StringBuilder類的使用
Time of Update: 2018-12-07
前段時間一時興起,參考各種資料文檔,各種程式碼。連基本樂理知識都去瞭解了一些,弄清楚了什麼是十二平均律,什麼是半音、全音等等,終於弄出了這麼個東東,如:其功能就是輸入“簡譜”就能演奏出優美的旋律。“連音”奏法一直沒辦法實現,是較為遺憾的一個事。程式中的簡譜也是有規則的:以01234567為基本四分音符號,每個音符用英文逗號分開,如:1,2,3,4等,0代表休止符。在音符前輸入:“+-#!” 加號表示此音升高八度,減號則降八度,井號升半音,歎號降半音。 在基本音符後加斜杠“/”表示此音時值減一半,