Time of Update: 2018-12-05
最近我在寫資料壓縮的程式,經常用到數組。每到一定時候就需要對數組全部元素進行清零。由於C#不提供memset()方法。所以進行了以下的測試。主要程式部份:static void Main(string[] args){ int i,k; double p = 0; DateTime s, e; byte[] test = new byte[65536]; byte[] test2 = new byte[65536]; for(int i = 0; i <
Time of Update: 2018-12-05
// Log.h#ifndef LOG_H#define LOG_H#include <fstream>#include <string>#include <sstream>#include <ctime>using namespace std;/** * 用於輸出log檔案的類. */class Log{public: Log(); ~Log(); bool Open(string strFileName); void
Time of Update: 2018-12-05
文章目錄 Chad Austin, 2002.02.15 http://chadaustin.me/cppinterface.html Chad Austin, 2002.02.15Updates2003.02.21Clarified some of my comments thanks to feedback and suggestions fromRazvan Surdulescu. For actual COM
Time of Update: 2018-12-05
快速排序(Quicksort)是對冒泡排序的一種改進。它的基本思想是:通過一趟排序將要排序的資料分割成獨立的兩部分,其中一部分的所有資料都比另外一部分的所有資料都要小,然後再按此方法對這兩部分資料分別進行快速排序,整個排序過程可以遞迴進行,以此達到整個資料變成有序序列。 演算法過程:設要排序的數組是A[0]……A[N-1],首先任意選取一個資料(通常選用第一個資料)作為關鍵資料,然後將所有比它小的數都放到它前面,所有比它大的數都放到它後面,這個過程稱為一趟快速排序。一趟快速排序的演算法是:
Time of Update: 2018-12-05
在C++ symbian中有很多%d %S %x這樣的符號 用的很靈活很零碎,在網上找了個貼子放到這裡 學習下 以後忘了也好到這裡尋找.C++下基本類型所佔位元和取值範圍:符號屬性 長度屬性 基本型 所佔位元 取值範圍 輸入符舉例 輸出符舉例-- -- char 8 -2^7 ~ 2^
Time of Update: 2018-12-05
刪除檔案夾有時候並不是一件容易的事,特別是類似於boost解壓出來的檔案夾,其中的目錄和檔案太多,刪除的時候,光彈出確認介面就要等好久好久。最理想的情況是,我選中這個目錄後,馬上可以開始刪除,然後我就可以站起來出去喝口水,或者去吃個飯,回來時世界已經清靜了。當然了,現在win7刪除一個大目錄時,速度已經相當快了,再加上電腦速度越來越快。自己寫代碼這種事純粹是個人愛好,不見得速度比windows的刪除速度快,本文只是記錄一下這個想法的實際做法,免得需要的時候又琢磨半天。自己建立一個視窗,用來接收選
Time of Update: 2018-12-05
教授C++,如果還使用Hello World的例子作為入門,那就弱爆啦!它只能告訴你不要用printf,要用cout。但是,為什嗎?這兩個有什麼區別?cout就代表了C++嗎?我們還是整點有技術含量的吧。問題:編寫“字串與數值互相轉換”的函數。1. C語言風格/* C 風格編碼*/#include <cstdlib>#include <cstdio>using namespace std;void value2str(int value){ char str[30]
Time of Update: 2018-12-05
1. public class A { public virtual void Fun1(int i) { Console.WriteLine(i); } public void Fun2(A a) { a.Fun1(1); Fun1(5); } } public class B : A { public
Time of Update: 2018-12-05
C++模板元編程,是使用template進行編譯期運算的一種機制,可以認為是C++的一種編程方式。第一個例子:計算整數N的階乘。//模板的一般形式template<int N>class Factorial{public: enum { _result = N * Factorial<N-1>::_result };};//用於結束遞迴規則的特化模板template<>class
Time of Update: 2018-12-05
VC++2010已經支援regex了, 可以用來編譯下述代碼.#include <string>#include <regex>#include <iostream>using namespace std;/* 測試C++11中的Regex. */int main(){ //定義Regex,匹配時間格式 regex testRegex("[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}"); //要匹配的字串
Time of Update: 2018-12-05
Assembly assembly = Assembly.LoadFrom(@"..\..\..\Common\bin\Debug\Common.dll");Type t = assembly.GetType("Common.ForPrivate");MethodInfo method = t.GetMethod("Find", BindingFlags.NonPublic | BindingFlags.Instance);object obj =
Time of Update: 2018-12-05
文章目錄 EABelumHundsun 聚源文思 EA1. SQL關鍵字: rank() over 2. SQL關鍵字: except3. 資料庫索引的原理(http://blog.csdn.net/zzuqqiu/article/details/7948091) Belum1. .net 4.0特性:dynamic,逆變和協變,函數缺少參數等2. EF與Nihbernate的不同(http://news.cnblogs.com/n/550
Time of Update: 2018-12-05
根據sgi 的STL源碼的二級分配演算法改寫的記憶體池分配程式,只要稍微修改就可以實現共用記憶體方式管理,使用C++標準庫容器中的map,set,multimap,multiset測試通過,vector測試通不過,原因是在記憶體回收的時候考慮的比較簡單,vector每次分配記憶體個數不固定,回收也不固定,這樣的話,程式還需要繼續完善。記憶體池管理程式源碼如下:#ifndef MY_ALLOCATOR_H_#define MY_ALLOCATOR_H_#include
Time of Update: 2018-12-05
C語言中基本的輸入輸出函數有:putchar ():把變數中的一個字元常量輸出到顯示器螢幕上;getchar ();從鍵盤上輸入一個字元常量,此常量就是該函數的值;printf ();把鍵盤中的各類資料,加以格式控制輸出到顯示器螢幕上;scanf ();從鍵盤上輸入各類資料,並存放到程式變數中;puts ():把陣列變數中的一個字串常量輸出到顯示器螢幕上;gets ():從鍵盤上輸入一個字串常量並放到程式的數組中.sscanf(); 從一個字串中提取各類資料。
Time of Update: 2018-12-05
一、雙指標方法雙指標就是指像指標的指標,比如你可以這樣聲明一個數組和釋放一個數組的空間: //雙指標聲明二維動態數組 int **arr = new int*[x]; //理解雙指標的含義,指標的指標->數組的指標->二維數組 for(int i=0; i < x; ++i) arr[i] = new int[y]; //可以理解為在一個一維數組的某一個位上再開闢一個數組,也就形成二維數組//用delete釋放空間for(int m=0;m
Time of Update: 2018-12-05
文章作者:Slyar 文章來源:Slyar Home (www.slyar.com) 轉載請註明,謝謝合作。 qsort包含在<stdlib.h>標頭檔中,此函數根據你給的比較條件進行快速排序,通過指標移動實現排序。排序之後的結果仍然放在原數組中。使用qsort函數必須自己寫一個比較函數。函數原型:void qsort ( void * base, size_t num, size_t size, int ( * comparator ) ( const void *, const
Time of Update: 2018-12-05
#include <exception>#include <string>#include <sstream>#include <typeinfo>//custom exceptionsclass Exception : public std::exception{public:/// /brief Create exception object as copy of anotherException(const Exception& e)
Time of Update: 2018-12-05
在各種業務解決方案的設計過程中,伺服器處理任務的效率往往決定了方案的成敗。多執行緒任務是提高伺服器效率的主要手段,它提高了對伺服器資源的利用,使得任務可以並發處理。但如果伺服器處理的任務的特點是輕量級、頻率高,那麼線程的建立與銷毀會非常頻繁,而系統用於處理線程的建立與銷毀的開銷會佔相當大的比重,反而降低了系統的效率。通過線程池技術,可以減少頻繁的線程的建立與銷毀對系統效能的影響。 線程池是預先建立線程的一種技術。線程池在還沒有任務到來之前,建立一定數量(N1)的線程,放入空閑隊列中。
Time of Update: 2018-12-05
/*For example*Hex String: * unsigned char *src="0a0b0c0d"*Converted String: * unsigned char *des={0x0a,0x0b,0x0c,0x0d}*Reference:* http://bdn.borland.com/article/0,1410,17203,00.html*/#include "stdafx.h"#include
Time of Update: 2018-12-05
void CreateGrphicMenuWin(){ WNDCLASS wc; RECT rect; ZeroMemory(&wc, sizeof(wc)); ... wc.lpfnWndProc = (WNDPROC)MenuWinProc; ... //RegisterClass(&wc) //CreateWindow //ShowWindow //UpdateWindow}BOOL CALLBACK MenuWinProc(HWND hwnd, UINT msg,