Time of Update: 2018-12-05
今天來的時候開啟了MSDN掃了一眼C#裡的枚舉類型~~ 驀然發現這東西還有些新玩法。http://msdn.microsoft.com/zh-cn/library/sbbt4032.aspx#Y791首先是簡單介紹,……在此略過。因為enum用法很簡單麼~定義一個簡單的枚舉類型: enum Days {Sat, Sun, Mon, Tue, Wed, Thu, Fri}; //這時候 Days.Sat = 0 ,後面依此遞增。當然也可以手動指定起始值:
Time of Update: 2018-12-05
ManualResetEvent是C#中一個比較常用的工具,可用於線程間通訊,實現一種類似訊號量的功能(不知道我這樣描述是否恰當,有可能不是“類似”,而“就是”通過訊號量來實現的,因為我也是最近才知道這個類,以前一直不知道,哈哈。如果有哪位清楚的話,請給我解惑。)。先瞭解一下ManualResetEvent的基本用法:1、初始化:public ManualResetEvent(bool initialState); ManualResetEvent的構造方法有個bool型參數,當為true時,
Time of Update: 2018-12-05
標準控制項1 btn Button 2 chk CheckBox 3 ckl CheckedListBox 4 cmb ComboBox 5 dtp DateTimePicker 6 lbl Label 7 llb LinkLabel 8 lst ListBox 9 lvw ListView 10 mtx MaskedTextBox 11 cdr MonthCalendar 12 icn NotifyIcon 13 nud NumeircUpDown 14 pic PictureBox 15
Time of Update: 2018-12-05
http://blog.csdn.net/lizhizhe2000/archive/2006/09/19/1249209.aspx using System;using System.Runtime.InteropServices;namespace EAE.MyServiceInstaller{ class ServiceInstaller { #region Private Variables private string _servicePath; private string _
Time of Update: 2018-12-05
今天在一個項目做匯入功能時候,應用C#裡面的Random產生的隨機數,居然隨機產生相同的編號,真鬱悶。啟動跟蹤調試的時候就不會了。後來找找MSDN還有網上的資料,現在終於明白了其中的一些原因。原因如下: Random類是一個產生偽隨機數位類,它的建構函式有兩種,一個是直接New Random(),另外一個是New
Time of Update: 2018-12-05
我們在編寫程式時,經常遇到兩個模組的功能非常相似,只是一個是處理int資料,另一個是處理string資料,或者其他自訂的資料類型,但我們沒有辦法,只能分別寫多個方法處理每個資料類型,因為方法的參數類型不同。有沒有一種辦法,在方法中傳入通用的資料類型,這樣不就可以合并代碼了嗎?泛型的出現就是專門解決這個問題的。讀完本篇文章,你會對泛型有更深的瞭解。 為什麼要使用泛型為了瞭解這個問題,我們先看下面的代碼,代碼省略了一些內容,但功能是實現一個棧,這個棧只能處理int資料類型:public class
Time of Update: 2018-12-05
偶然間發現一條語句, 裡面的一個操作符讓我嚇了一跳, "=>". 這是個什麼東西? 查了一下才知道這玩意兒叫Lambda Expressions. 也就是C#2.0中的匿名方法.舉例如下:public void test() { string[] list = new string[] { "abc", "12", "java" }; string[] ll = Array.FindAll(list,
Time of Update: 2018-12-05
在.Net世界裡,用得最多的方法之一就是System.Object.ToStrying()了。你應該為你所有的客戶寫一個“通情達理”的類(譯註:這裡是指這個類應該對方便使用)。要麼,你就迫使所用類的使用者,去使用類的屬性並添加一些合理的易讀的說明。這個以字串形式存在,關於你設計的類的說明,可以很容易的向你的使用者顯示一些關於對象的資訊到:Windows Form裡,Web Form裡,控制台輸出。這些字元說明可以用於調試。你寫的任何一種類型,都應該合理的重寫這個方法。當你設計更多的複雜的類型時,
Time of Update: 2018-12-05
對於常量,C#裡有兩個不同的版本:運行時常量和編譯時間常量。 因為他們有不同的表現行為,所以當你使用不當時,將會損傷程式效能或者出現錯誤。 兩害相權取其輕,當我們不得不選擇一個的時候,我們寧可選擇一個運行慢一點但正確的那一個,而不是運行快一點但有錯誤的那個。基於這個理由,你應該選擇運行時常量而不是編譯時間常量(譯註:這裡隱藏的說明了編譯時間常量效率更高,但可能會有錯誤)。
Time of Update: 2018-12-05
using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Reflection;namespace ConsoleApplication6{ /// <summary> /// AttributeTargets.Class可以對類應用屬性 /// Inherited能否由衍生類別或重寫成員繼承
Time of Update: 2018-12-05
視頻示範:http://u.115.com/file/f2f879dd4b本演練提供了通過僅執行預存程序來訪問資料的LINQ to SQL基本端對端方案。 資料庫管理員經常使用此方法來限制資料存放區的訪問方式。 出於本演練的需要,您將用到已映射到 Northwind 樣本資料庫中預存程序的兩個方法:CustOrdersDetail 和 CustOrderHist。 此映射發生在運行 SqlMetal 命令列工具來產生 C#
Time of Update: 2018-12-05
視頻示範:http://u.115.com/file/f2e6d30b81Language-integrated Query (LINQ) (LINQ) 不僅可用於檢索資料,而且還是一個功能強大的資料轉換工具。通過使用 LINQ 查詢,您可以將源序列用作輸入,並採用多種方式修改它以建立新輸出序列。您可以通過排序和分組來修改序列本身,而不必修改元素本身。 但是,LINQ 查詢最強大的功能可能在於它能夠建立新類型。這一功能在 select
Time of Update: 2018-12-05
'Restrict' Pointers One of the new features in the recently approved C standard C99, is the restrict pointer qualifier. This qualifier can be applied to a data pointer to indicate that, during the scope of that pointer declaration, all data accessed
Time of Update: 2018-12-05
C#得到硬碟序號//================調用方法==================================HardDiskInfo hdd = AtapiDevice.GetHddInfo(0); // 第一個硬碟Console.WriteLine("Module Number: {0}", hdd.ModuleNumber);Console.WriteLine("Serial Number: {0}",
Time of Update: 2018-12-05
//程式可以正常運行,但file.nohole始終沒有東西寫進去,為什嗎? #include "apue.h"#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h> int main(int argc, char *argv[]){ FILE *fp1, *fp2; char chr; int fd, count = 0; if(argc != 3)
Time of Update: 2018-12-05
總的來說,C#提供了FTP很簡單的方法,封裝好的FtpWebRequest和FtpWebResponse,使得開發FTP模組很簡單。但是封裝好之後許多自訂化定製會有些問題,此處不具體詳述。下面看期間遇到的一些問題:try{ this.ftpUri = new Uri(ftpPath); this.webrequest = (FtpWebRequest)WebRequest.Create(ftpUri); if
Time of Update: 2018-12-05
Historically, a C program has been composed of the following pieces:Text segment, the machine instructions that the CPU executes. Usually, the text segment is sharable so that only a single copy needs to be in memory for frequently executed programs,
Time of Update: 2018-12-05
參考網上代碼寫了個MD5加密函數如下首先使用如下命名空間using System;using System.Security.Cryptography;函數部分:public static string MD5Encode(string strText) { MD5 md5 = new MD5CryptoServiceProvider(); byte[] result =
Time of Update: 2018-12-05
C#中List與IList的區別2009-11-15 14:19List<T>類:表示可通過索引訪問的對象的強型別列表,提供用於對列表進行搜尋、排序和操作的方法。IList<T>介面:表示可按照索引單獨訪問的一組對象。下面談談它們之間的區別:首先,List<T>是一個類,IList<T>是一個介面。介面和類的區別是本質的,類是負責功能的實現,而介面則是負責功能的定義。所以它們的區別本質上也就是類和介面的區別。具體來說,IList 泛型介面是
Time of Update: 2018-12-05
緊耦合 從前,在南方一塊奇異的土地上,有個工人名叫彼得,他非常勤奮,對他的老闆總是百依百順。但是他的老闆是個吝嗇的人,從不信任別人,堅決要求隨時知道彼得的工作進度,以防止他偷懶。但是彼得又不想讓老闆呆在他的辦公室裡站在背後盯著他,於是就對老闆做出承諾:無論何時,只要我的工作取得了一點進展我都會及時讓你知道。彼得通過周期性地使用“帶類型的引用”(原文為:“typed reference” 也就是delegate??)“回調”他的老闆來實現他的承諾,如下: class Worker {