Time of Update: 2018-12-07
使用過QQ的人都知道,只要把檔案拖拽到訊息框中就可以傳送檔案了。那麼這種功能是如何?的呢?其實很簡單,只需要響應一個WM_DROPFILES訊息就可以了。 在基於對話方塊的程式中,預設是沒有這個訊息的,按下Ctrl+W,彈出類嚮導對話方塊,選擇Class Info標籤,在Message fileter下拉式清單中選擇Window,然後再點擊Message Maps標籤,就出現WM_DROPFILES訊息了,添加該訊息的響應函數: void
Time of Update: 2018-12-07
所有C語言教科書上都講了“++”這個運算子,放在變數前表示先加1再使用該變數,放在變數後面表示先使用該變數再加1。但是我們真的掌握了這個運算子了嗎?如果你答對了下面這兩個程式的輸出結果,就說明你已經掌握了這個運算子的用法了。程式1:#include <stdio.h>int main(){ int x = 1; int y; y = (x++) + (x++) + (x++); printf("y = %d\n", y);
Time of Update: 2018-12-07
遇到一道筆試題:設計一個矩陣類,行和列數通過建構函式輸入,支援a[][]取值和賦值。這實際上就是一個二維數組下標運算子多載的問題,解決思路如下:(1)用一維數組代替二維數組分配記憶體,從而獲得連續的記憶體空間,取值時通過計算獲得相應行和列上的值(2)設計兩個類,分別重載operator[],一個擷取行,一個擷取列實現如下:代碼class MatrixEntry{ friend class Matrix; //友元類,訪問私人變數m_currentRowpublic:
Time of Update: 2018-12-07
判斷檔案結束有兩種方法:EOF和feof() 查看stdio.h可以看到如下定義: #define EOF (-1) #define _IOEOF 0x0010 #define feof(_stream) ((_stream)->_flag & _IOEOF) 由此可以看出,這兩種方式的原理是不同的。 有人說EOF只能用於文字檔,其實不然,還要看定義的變數的類型。下面這段程式對文字檔和二進位檔案都可以:
Time of Update: 2018-12-07
最近要搭建一個Bug跟蹤管理系統,開源免費的Mantis自然首當其衝。要運行Mantis,有兩種主流的環境配置:IIS+PHP+MySQL+Mantis和Apache+PHP+MySQL+Mantis,本文主要介紹後一種。 首先介紹如何在Apache上運行PHP: 1.安裝Apache 首先下載Apache伺服器的windows版本,網址為:http://httpd.apache.org/download.cgi,最新版本為Apache2.2,下載完後安裝。
Time of Update: 2018-12-07
使用Subversion進資料列版本設定可以更加有效控制軟體開發過程,節省開發時間。本文主要介紹windows平台下Subversion的安裝配置。1.下載Subversion伺服器和用戶端(使用TortoiseSVN) Subversion官網網址:http://subversion.tigris.org 伺服器:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100
Time of Update: 2018-12-07
const除了可以聲明常量,還有很多其他用途。用好const對於提高程式的健壯性具有很重要的作用,本文列舉了一些const的常見用法,參考了C++ FAQs Lite。1.用const修飾函數參數 用const修飾函數參數可以防止參數在函數體內被意外修改。 void f1(const std::string& s); // const引用傳遞 void f2(const std::string* sptr); // const指標傳遞
Time of Update: 2018-12-07
題目:把句子"I love you baby",倒置成"baby you love I"。原題帖及解法:http://blog.csdn.net/lizhongkan/archive/2009/10/21/4708300.aspx原帖的解法是用了輔助空間,這裡說下我自己的解法,演算法原地工作,不需要輔助的字串。解法分3步:(1)判斷字元是否為字母,參考庫函數實現:inline bool IsAlpha(char c){ return (unsigned int)((c | 0x20) -
Time of Update: 2018-12-07
Subversion的使用權限設定功能為代碼的安全訪問提供了可靠的保障,通過設定不同的使用者權限和組許可權,各種角色分工明確,在共用代碼的同時保證代碼不受破壞。 在建立多個版本庫時,每個版本庫都有自己的設定檔,可以單獨配置使用者權限和組許可權。為簡單起見,將所有版本庫都指向同一個設定檔,在這個設定檔中統一進行配置。1.指定根目錄
Time of Update: 2018-12-07
Fedora9終於發布了,除了一如繼往地帶來了大量新特性之外,我還發現了一個非常有用的功能:將Fedora9的LiveCD放入隨身碟!這裡介紹在Windows下製作Fedora9 Live USB的方法(同樣適用於製作Fedora8的Live
Time of Update: 2018-12-07
經常看到這樣的聲明:T& func(T& t),這種聲明和T func(T t)有什麼區別?書上的解釋是為了提高效率,究竟是如何提高效率的呢?內部執行了什麼操作?本文通過8個小例子對引用參數和引用返回進行了一次徹底的排查。 首先看一下在類的成員函數中的引用參數和引用傳回值:類定義class A{ public: int x; A(){}//建構函式 A(const A& other)//拷貝建構函式 {
Time of Update: 2018-12-07
經過一段時間的拾掇,終於能夠在andLinux下顯示中文了。首先,升級andLinux sudo apt-get update然後安裝中文基本包 sudo apt-get install language-pack-zh再安裝kde的基本中文包 sudo apt-get install language-pack-kde-zh-base language-pack-kde-zh修改/etc/environment中的環境變數 LANG="zh_CN.GBK"
Time of Update: 2018-12-07
最近開始研究QT4,買了一本《精通QT4編程》,在我的Ubuntu上安裝了QT4和KDevelop,在命令列裏手工寫代碼、編譯的時候沒有錯誤,可以成功運行,但是在KDevelop裡建立了一個QT4工程後卻發現無法成功編譯,在連結時報出以下錯誤:undefined reference to `QApplication::QApplication(int&, char**, int)'。
Time of Update: 2018-12-07
網友問我的一個問題:移動一個表單時如何同時移動另一個表單?類似winAMP裡的效果。其實實現起來也很簡單:截獲主表單的WM_MOVE(表單移動)訊息,同時設定附屬表單的位置。代碼如下:protected override void WndProc(ref Message m) { const int WM_MOVE = 0x3; if (m.Msg == WM_MOVE ) {
Time of Update: 2018-12-07
在Visual C++以前的版本中,可以將非常量引用綁定到臨時對象。 現在,只能將臨時對象綁定到常量引用。 樣本: 例如,與Visual Studio .NET相比,以下樣本在Visual Studio .NET 2003中具有不同的運行時行為: #include "iostream" using namespace std; class C {}; void f(C & c) { cout <<
Time of Update: 2018-12-07
1。http://files.cnblogs.com/feiyun0112/csdnreader2005.rar2。運行環境軟體使用VS2005編寫 需要.NET FrameWork 2.0
Time of Update: 2018-12-07
1. C語言動態分配二維數組(1)已知第二維Code-1char (*a)[N];//指向數組的指標a = (char (*)[N])malloc(sizeof(char *) * m);printf("%d\n", sizeof(a));//4,指標printf("%d\n", sizeof(a[0]));//N,一維數組free(a);(2)已知第一維Code-2char* a[M];//指標的數組int i;for(i=0; i<M; i++)a[i] = (char
Time of Update: 2018-12-07
Time of Update: 2018-12-07
如果表A的主關鍵字是表B中的欄位,則該欄位稱為表B的外鍵,表A稱為主表,表B稱為從表。外鍵是用來實現參照完整性的,不同的外鍵約束方式將可以使兩張表緊密的結合起來,特別是修改或者刪除的級聯操作將使得日常的維護工作更加輕鬆。這裡以MySQL為例,總結一下3種外鍵約束方式的區別和聯絡。 這裡以使用者表和使用者組表為例,這是一個典型的多對一關聯性,多個使用者對應於一個使用者組。 首先建立使用者組表:建立使用者組表create table t_group (id int not
Time of Update: 2018-12-07
首先看段代碼:double x,y,z; x = 1; y = 0; try { z = x / y; Console.WriteLine(z); } catch ( Exception e) { Co