Time of Update: 2018-12-05
原地址:http://clacklin.blog.163.com/blog/static/103209820106108538269/ 開啟Vs2005或vs2008工程,看在Properties下是否有app.manifest這個檔案;如沒有,右擊工程在菜單中選擇“屬性”,選中“安全性”,在介面中勾選“啟用ClickOnce安全設定”後,在Properties下就有自動產生app.manifest檔案。開啟app.manifest檔案,在<security>下加入<reque
Time of Update: 2018-12-05
在《多線程編程》系列第一篇講述了如何啟動線程,這篇講述線程之間存在競爭時如何確保同步並且不發生死結。 在《多線程編程》系列第一篇講述了如何啟動線程,這篇講述線程之間存在競爭時如何確保同步並且不發生死結。 線程不同步引出的問題 下面做一個假設,假設有100張票,由兩個線程來實現一個售票程式,每次線程運行時首先檢查是否還有票未售出,如果有就按照票號從小到大的順序售出票號最小的票,程式的代碼如下: using System;
Time of Update: 2018-12-05
如下代碼摘自using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;using System.Data.SqlServerCe;using System.IO;using
Time of Update: 2018-12-05
方法一:private void dgv_zy_CellContentClick(object sender, DataGridViewCellEventArgs e){ int count = Convert.ToInt16(dgv_zy.Rows.Count.ToString()); for (int i = 0; i < count; i++) {
Time of Update: 2018-12-05
一、BackGroundWorker工作步驟1.向表單中拖入一個BackGroundWorker控制項。2.在某個方法或者事件中,調用BackGroundWorker的RunWorkerAsync()方法。3.該方法為非同步作業,將自動引發BackGroundWorker的DoWork事件。4.調用ReportProgress方法將引發ProgressChanged事件。二、一個使用了BackGroundWorker的例子using System;using
Time of Update: 2018-12-05
1. mutable 如果某個成員變數被申明為mutable,則它的修飾不受const限制。如在const成員函數中都可以修改它的值。void Test::Output() const { cout << "Output for test!" << endl; count++; }2. explicit 有時候看C++代碼會出現 Test t1 = 100; 這樣的語句,而且還不會報錯。實際上,這條語句隱式地調用了 Test(int
Time of Update: 2018-12-05
1. 資料關於紅/黑樹狀結構的理論,那本《演算法導論》中進行了詳細的分析,但我覺得下面這篇文章講得更詳細:http://blog.163.com/aaronliu@yeah/blog/static/6596183720090143521990/只是在講解刪除過程的時候,有點亂。下面的頁面中給出了不少學習的連結: http://cid-47027e68f36cbaf5.spaces.live.com/blog/cns!47027E68F36CBAF5!315.entry2.
Time of Update: 2018-12-05
Process.Start("C:\\Program Files\\Tencent\\QQ\\QQ.exe", "/START QQUIN:QQ號碼 PWDHASH:密碼的雜湊
Time of Update: 2018-12-05
1、時間長度的計算 TimeSpan類。 例如:TimeSpan span = dateTime1 - dateTime2 方便啊 2、從類(Class)返回一個System.Type類型,用typeof關鍵字 3、從一個對象執行個體(Object)返回一個System.Type類型,用GetType方法 4、判斷是否處於設計狀態:DesignMode屬性 5、根據GUID建立對象執行個體 System.Guid pGuid = new Guid(guid);
Time of Update: 2018-12-05
1.paramsparams 關鍵字可以指定在參數數目可變處採用參數的方法參數,在方法聲明中只允許一個 params 關鍵字,並且是最後一個參數。using System;class App{ public static void UseParams(params object[] list) { for (int i = 0; i < list.Length; i++) { Console.WriteLine(list[i]);
Time of Update: 2018-12-05
今天上午3、4節課資料結構與演算法,老師講了棧(stack)和隊列(queue),示範範例程式碼發現課本上的代碼有很多的bug1、用棧進行簡單的算術運算式的樣本(P52的範例程式碼)沒有考慮到+、-、*、/ 的優先順序問題,以及如果有括弧,該如何處理 MyHomeWork :①向該範例程式碼中加進處理優先順序的代碼(包括小括弧、中括弧、大括弧)
Time of Update: 2018-12-05
方法一在unicode 字串中,中文的範圍是在4E00..9FFF:CJK Unified Ideographs。 通過對字元的unicode編碼進行判斷來確定字元是否為中文。 protected bool IsChineseLetter(string input,int index) ...{ int code = 0; int chfrom = Convert.ToInt32("4e00",
Time of Update: 2018-12-05
首先兩個類的工作原理不同:string類是一種傳統的修改字串的方式,當把一個字串添加到另一個字串時,系統先是把兩個字串寫入記憶體,接著刪除原來的string對象,然後建立一個string對象,並讀取記憶體中的資料付給該對象。 而System.Text名字空間下的StringBuilder類就不一樣了,StringBuilder
Time of Update: 2018-12-05
加這個命名空間using System.Runtime.InteropServices; [StructLayout(LayoutKind.Sequential)] struct LASTINPUTINFO { [MarshalAs(UnmanagedType.U4)] public int cbSize; [MarshalAs(UnmanagedType.U4)] public uint dwTime; } [DllImport("user32.dll")] static extern
Time of Update: 2018-12-05
通常在ASP.NET,我們常常會用到JS指令碼來實現頁面上的很多操作。在頁面中引用JS的方法也是有好幾種。這裡來介紹一下,如何將JS指令碼內嵌到組件(Assembly)中,即DLL中。這樣的做法最大的好處就是能夠保護JavaScript檔案的內容,避免JavaScript類的定義被修改。下面就以一個樣本來講解如何操作:1.開啟VS,建立一個WebApplication1項目[這裡建立網站也可以],採用預設設定。2.在當前解決方案中添加新項目。(類庫:
Time of Update: 2018-12-05
Dictionary<TKey, TValue> 類是常用的一個基礎類,但用起來有時確不是很方便。本文逐一討論,並使用擴充方法解決。向字典中添加鍵和值添加鍵和值使用 Add 方法,但很多時候,我們是不敢輕易添加的,因為 Dictionary<TKey, TValue> 不允許重複,嘗試添加重複的鍵時 Add 方法引發 ArgumentException。大多時候,我們都會寫成以下的樣子:var dict = new Dictionary<int, string&
Time of Update: 2018-12-05
1:建立安裝部署項目 開啟VS,點擊建立項目,選擇:其他項目類型->安裝與部署->安裝嚮導(安裝項目也一樣),然後點擊確定.(詳細見) 此主題相關圖片如下: 2:安裝嚮導 關閉後開啟安裝嚮導,點擊下一步,或者直接點擊完成. 3:開始製作 安裝嚮導完成後即可進入專案檔夾: 雙擊"應用程式檔案夾"在右邊的空白處右擊,選擇添加->檔案,將你的做的應用程式的可執行檔和相應的類庫和組件添加進來. 然後右擊你的可執行檔,建立捷徑,然後把捷徑分別剪下或複製到左邊的"使用者的´程式´菜單"
Time of Update: 2018-12-05
一個DataGridView簡單應用樣本,只是簡單的實現了DataGridView的資料繫結、添加、修改和刪除的操作,先看代碼: view plaincopy to clipboardprint? using System; using System.Data; using System.Windows.Forms; namespace DataGridView { public partial class frmMain : Form { public frmMain() {
Time of Update: 2018-12-05
public DataTable GetDgvToTable(DataGridView dgv) { DataTable dt = new DataTable(); for (int count = 0; count < dgv.Columns.Count; count++) { DataColumn dc = new DataColumn(dgv.Columns[count].
Time of Update: 2018-12-05
在處理一些資料時,我們希望能用“四捨五入”法實現,但是C#採用的是“四捨六入五成雙”的方法,如下面的例子,就是用“四捨六入五成雙”得到的結果:double d1 = Math.Round(1.25, 1);//1.2double d2 = Math.Round(1.24, 1);//1.2double d3 = Math.Round(1.26, 1);//1.3double d4 = Math.Round(1.35, 1);//1.4為了用C#來實現“四捨五入”,我寫了下面的函數:代碼