Time of Update: 2018-12-07
private string[] GetMoc() { string[] str = new string[3]; ManagementClass mcCpu = new ManagementClass("win32_Processor"); ManagementObjectCollection mocCpu = mcCpu.GetInstances(); foreach(Management
Time of Update: 2018-12-07
使用linq to xml可以很方便的實現對xml檔案的訪問,在網上看到的寫的這方面的文章都稍微有一些混亂。今天部落格園首頁上轉過來的那篇文章寫的也比較不清楚,下面把我在平常中使用linq to xml訪問檔案的方式寫下來,供沒有寫過的兄弟參考: 首先第一步是選中要訪問xml檔案的屬性copy to
Time of Update: 2018-12-07
c#3.0中引入了運算式樹狀架構,使用泛型運算式樹狀架構可以方便的解決問題。舉一個簡單的例子,我們可以使用它來完成不同類型的數值的加減乘除。首先,來看一下簡單的思路:(下述代碼僅僅以加法運算來樣本) static class Calculate<T> { public static T Add(T num1, T num2) { return num1 + num2; } }
Time of Update: 2018-12-07
Time of Update: 2018-12-07
C#逸出字元:·一種特殊的字元常量;·以反斜線"\"開頭,後跟一個或幾個字元。·具有特定的含義,不同於字元原有的意義,故稱“轉義”字元。·主要用來表示那些用一般字元不便於表示的控制碼。 ·它的作用是消除緊隨其後的字元的原有含義·用一些一般字元的組合來代替一些特殊字元,由於其組合改變了原來字元表示的含義,因此稱為“轉義” ·用可以看見的字元表示那不可以看見的字元, 如'\n'表示換行常用的逸出字元及其含義:\’ 單引號\” 雙引號\\ 反斜線\0 空\a 警告(產生峰鳴)\b 退格\f 換頁\n
Time of Update: 2018-12-07
委託的聲明public delegate void MyDelegate(string
Time of Update: 2018-12-07
最近在做winform的程式中,需要只能開啟一個程式,如果已經存在,則啟用該程式的視窗,並顯示在最前端。在網上google了一哈,找到了很多的解決方案。這裡我整理了3種方案,並經過了測試,現和朋友們分享:一、使用用互斥量(System.Threading.Mutex) 同步基元,它只向一個線程授予對共用資源的獨佔訪問權。在程式啟動時候,請求一個互斥體,如果能擷取對指定互斥的訪問權,就職運行一個執行個體。代碼 Code highlighting produced by Actipro
Time of Update: 2018-12-07
C# 溫故而知新: 線程篇(四)線程同步篇 (中):同步工具類的介紹1 上篇回顧2 繼續介紹基元核心模式中的 monitor類3 同步控制代碼:WaitHandle4 EventWaitHandle,AutoResetEvent和ManualResetEvent5 同步互斥mutex類6 簡單說明下mutex和monitor的區別7 選擇我們需要的同步工具8 本章總結 1 上篇回顧
Time of Update: 2018-12-07
1、整形int a = 10; 十進位,格式化輸出:%iint b = 0743; 八進位,格式化輸出:%o %#o(輸出前置字元號0)int c = 0x7f3d; 十六進位,格式化輸出:%x %#x(輸出前置字元號0x)2、浮點型float f = 1.234; 格式化輸出:%f(小數部分預設長度為6,不夠用0填補)double d =
Time of Update: 2018-12-07
C#中如何合理的釋放非託管記憶體?在本文中我們將講解使用IDisposable釋放託管記憶體和非託管記憶體。 A.首先需要讓類實現IDisposable介面,然後實現IDispose方法。 A.a核心Disponse(bool
Time of Update: 2018-12-07
繼承反應了類和類之間的關係。 世界上很多事物都是有共性的,共性的那一部分我們就抽象為基類,用於派生其它類,這樣提高了代碼的複用性,使得代碼的結構清晰易讀,而且易於代碼的擴充和維護。 C#的繼承只能繼承自一個基類,這一點不同於C++的繼承。 C#的繼承具有傳遞性,即B繼承自A,C繼承自B,則C具有A的所有特性。 C#的繼承隱式為public的。
Time of Update: 2018-12-07
C# 也允許您重載運算子,以供您自己的類使用。這樣做,可以使使用使用者定義的資料類型就像使用基礎資料型別 (Elementary Data Type)一樣自然、合理。例如,您可以建立一個名為 ComplexNumber 的新資料類型來表示一個複雜的數字,並提供使用標準算術運算子對此類數字執行數學運算的方法,如使用 + 運算子將兩個複雜數字相加。若要重載某個運算子,可以編寫一個函數,在其命名運算子之後加上要重載的運算子的符號。例如,可按以下方法重載 + 運算子:public static
Time of Update: 2018-12-07
一、擷取當前檔案的路徑string str1=Process.GetCurrentProcess().MainModule.FileName;//可獲得當前執行的exe的檔案名稱。 string
Time of Update: 2018-12-07
在傳統的應用程式中,執行常常是簡單、線性。把應用程式載入到記憶體中,從A點開始執行,在B點結束,然後在記憶體中卸載,在這個過程中可能用到其他各種實體,例如儲存介質上的檔案或視訊卡的功能,但處理的主體總是位於一個地方。此時的代碼一般與使用各種數學和邏輯方式處理資料相關。處理方法通常比較簡單,使用基本的資料類型。
Time of Update: 2018-12-07
==============@
Time of Update: 2018-12-07
8.2.1 介面 介面是把隱式公用方法和屬性群組合起來,以封裝特定功能的一個集合。定義介面後,可以在類中實現它,以便支援介面所指定的所有屬性和成員。可以把較一般用途的屬性和方法組合到一個介面中,然後在類中使用該介面。
Time of Update: 2018-12-07
"變數"僅僅是資料的儲存位置。你可以把資料存放到其中,或者從中取出來作為C#運算式的一部分。變數中所存放的資料的含義是通過類型來控制的。 C#是個強型別(???)的語言。這樣,一切對變數的操作都是針對該變數的類型而進行的。為了保證變數中所存放資料的合法性和一致性,對不同類型的變數進行操作有相應的規則。 C#語言的簡單類型包含布爾類型和三種數實值型別:整型,浮點型和小數。 1.清單1-1 顯示布爾值:Boolean.csusing System;class Booleans {public
Time of Update: 2018-12-07
================@類型成員及其訪問限定================一個類型可以定義零或多個一下成員:1、常數:常熟是一個表示恒定不變的值的符號,這些符號主要用來使得代碼更具有可讀性和可維護性。常數總是和類型而非它們的執行個體相關聯,它總是靜態。2、欄位:欄位是類型的成員變數,它可以是唯讀或讀寫的。欄位又分為靜態和非靜態(執行個體欄位),靜態欄位被視為類型狀態的一部分,執行個體欄位被視為對象狀態的一部分。3、執行個體建構函式:初始化新對對象的執行個體欄位。4、類型建構函式:初始
Time of Update: 2018-12-07
using System;using System.Xml;using System.Text;using System.Net;using System.IO;using System.Collections;using System.Text.RegularExpressions;public class App{ public static void Main() { string strCode; ArrayList
Time of Update: 2018-12-07
記得很久前有個人讓我解決這麼一個事情,他的一個c動態串連庫裡面有個靜態變數,每次調用這個方法的時候,就自動增加,他想在特定的時候,為了恢複這個靜態變數的初值,動態卸了這個動態庫,然後重新載入。(該動態庫不能改動)c#裡面要用到動態庫,需要使用DllImport,但是這個是全域的東西,不能像動態load/unload assembly所使用的AppDomain的方法。這樣就想到了API: LoadLibrary, GetProcAddress,