Time of Update: 2018-12-06
try-finally語句是Microsoft對C和C++語言的擴充,它能使32位的目標程式在異常出現時,有效保證一些資源能夠被及時清除,這些資源的清除任務可以包括例如記憶體的釋放,檔案的關閉,檔案控制代碼的釋放等等。try-finally語句特別適合這樣的情況下使用,例如一個常式(函數)中,有幾個地方需要檢測一個錯誤,並且在錯誤出現時,函數可能提前返回。#include <windows.h>#include <stdio.h>try-finally語句的文法與try-
Time of Update: 2018-12-06
定義一個空的C++類,例如class Empty{}一個空的class在C++編譯器處理過後就不再為空白,編譯器會自動地為我們聲明一些member function,一般編譯過去就相當於class Empty{public:Empty(); // 預設建構函式Empty( const Empty& ); // 拷貝建構函式~Empty(); // 解構函式Empty& operator=( const Empty& ); // 賦值運算子Empty*
Time of Update: 2018-12-06
重載運算子的類聲明:struct Vector { public double x, y, z; public Vector(double x, double y, double z) { this.x = x; this.y = y; this.z = z; } public Vector(Vector rhs) {
Time of Update: 2018-12-06
C++的四種cast操作符的區別並非我的原創----------------------------------------------------------------------Q:什麼是C風格轉換?什麼是static_cast, dynamic_cast 以及
Time of Update: 2018-12-06
定義(源於GoF《設計模式》):在不破壞封閉的前提下,捕獲一個對象的內部狀態,並在該對象之外儲存這個狀態。這樣以後就可將該對象恢複到原先儲存的狀態。備忘錄模式的優點和缺點 一、備忘錄模式的優點 1、有時一些發起人對象的內部資訊必須儲存在發起人對象以外的地方,但是必須要由發起人對象自己讀取,這時, 使用備忘錄模式可以把複雜的發起人內部資訊對其他的對象屏蔽起來,從而可以恰當地保持封裝的邊界。 2、本模式簡化了發起人類。發起人不再需要管理和儲存其內部狀態的一個個版本,用戶端可以自行管理
Time of Update: 2018-12-06
聲明:基礎知識來自於此:http://blog.163.com/chenjunfeng_2007/blog/static/119385083201019102742570/一、開啟:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using
Time of Update: 2018-12-06
編寫程式的時候難免要使用到靜態成員,由於靜態成員的訪問是脫離類型對象的,所以使用非靜態建構函式,私人方法或者一些其他方法都是不合理的。.Net提供了成員初始化語句和靜態建構函式來初始化靜態成員。
Time of Update: 2018-12-06
URL 重寫是截取傳入 Web 請求並自動將請求重新導向到其他 URL 的過程。 比如瀏覽器發來請求hostname/101.aspx ,伺服器自動將這個請求中定向為http://hostname/list.aspx?id=101。 url重寫的優點在於: 縮短url,隱藏實際路徑提高安全性; 易於使用者記憶和鍵入; 易於被搜尋引擎收錄; 實現URL重寫的幾個步驟: 第一: 下載MS的URLRewriter.dll,放到你的web程式的bin下
Time of Update: 2018-12-06
=> 語彙基元又稱為 Lambda 運運算元。 它會在「Lambda 運算式」(Lambda Expression) 中使用,以分開右邊的 Lambda 主體和左邊的輸入變數。 Lambda 運算式是類似匿名方法 (Anonymous Method) 的內嵌 (Inline) 運算式,但更有彈性。它會在以方法語法所表示的 LINQ 查詢中大量使用。 string[] words = { "cherry", "apple", "blueberry" };int
Time of Update: 2018-12-06
在c#項目中有時會用到json格式字串和對象資料類型的轉換,下面是一個轉換工具類: 說明:根據Json字串產生對象時,是根據對應的屬性名稱賦值,多於或少雩都不會報錯. 使用“DataContractJsonSerializer ”類時需要: 1、引用程式集 System.Runtime.Serialization 和 System.ServiceModel.Web 2、匯入命名空間 System.Runtime.Serialization 和
Time of Update: 2018-12-06
1、用字串分隔: using System.Text.RegularExpressions;string str="aaajsbbbjsccc";string[] sArray=Regex.Split(str,"js",RegexOptions.IgnoreCase);foreach (string i in sArray) Response.Write(i.ToString() + "<br>");輸出結果:aaabbbccc2、用多個字元來分隔:string
Time of Update: 2018-12-06
C#Regex小結只能輸入數字:"^[0-9]*$"。只能輸入n位的數字:"^\d{n}$"。只能輸入至少n位的數字:"^\d{n,}$"。只能輸入m~n位的數字:。"^\d{m,n}$"只能輸入零和非零開頭的數字:"^(0|[1-9][0-9]*)$"。只能輸入有兩位小數的正實數:"^[0-9]+(.[0-9]{2})?$"。只能輸入有1~3位小數的正實數:"^[0-9]+(.[0-9]{1,3})?$"。只能輸入非零的正整數:"^\+?[1-9][0-9]*$"。只能輸入非零的負整數:"^\
Time of Update: 2018-12-06
前幾天在網上看見一個製作計算機的c#程式,其中有一個動態註冊按鈕事件,覺的很有用。於是實際操作了一哈, 確實比較好。 言歸正傳,下面就來講講怎樣動態註冊按鈕事件。 首先,我們需要設定變數來擷取點擊一個數字按鈕的值,以便在“=”按鈕單擊事件中計算最終的結果。下面就是我開始的時候寫的一段代碼: 代碼Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-06
能播放指定的mp3檔案,或播放內嵌資源中的Mp3檔案以下為我寫的Mp3操作類原始碼: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using System;using System.Collections.Generic;using System.Linq;using System.Text;using
Time of Update: 2018-12-06
第一種:web.config裡...... <compilation defaultLanguage="c#" debug="false" /> <customErrors mode="RemoteOnly" defaultRedirect="error/genericerror.htm" > <error statusCode="500" redirect="error/callsupport.htm"/
Time of Update: 2018-12-06
剛寫程式時總覺得一個欄位就能滿足要求,何必要使用定義起來麻煩的屬性要get、set的去定義,代碼量還大,真不知道他們的區別和優點例:public class myclass { public static string A private sting _B=""; public string Getval { get { retrun _B ;} set { _B = value; } }}myclass.A 和
Time of Update: 2018-12-06
今天熟悉了下二維數組的使用,大概使用過程:就是先把DataTable資料存入到二維數組,然後再把二維數組迴圈讀取出來。測試代碼如下(測試代碼沒做異常處理):///擷取DataTable資料集DataTable dt = GetData(); //定義二維數組,並把資料存放區到數組(根據DataTable行列數)string[,] arrayList = new string[dt.Rows.Count,dt.Columns.Count];for(int
Time of Update: 2018-12-06
1. 避免將多個類放在一個檔案裡面。 2. 一個檔案應該只有一個命名空間,避免將多個命名空間放在同一個檔案裡面。 3. 一個檔案最好不要超過500行的代碼(不包括機器產生的代碼)。 4. 一個方法的代碼長度最好不要超過25行。 5. 避免方法中有超過5個參數的情況。使用結構來傳遞多個參數。 6. 每行代碼不要超過80個字元。 7. 不要手工的修改機器產生的代碼。 a) 如果需要編輯機器產生的代碼,編輯格式和風格要符合該編碼通訊協定。 b) Use partial
Time of Update: 2018-12-06
由於資料匯入,碰到mysql資料表中有Unix時間戳記無法匯入sql server資料庫,後面就先通過C#程式轉換時間格式,再匯入到sql server資料表string timeStamp = "1191030513613";DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));long lTime = long.Parse(timeStamp + "0000");
Time of Update: 2018-12-06
//Book 類 public class Book { public Book(string inname, string inauthor, string inpublisher, int inprice) { this.Name = inname; this.Author = inauthor; this.Publisher = inpublisher;