C++Builder 的 ListView 實現儲存格菜單首先, ListView->RowSelect = true;ListView->ViewStyle = vsReport;再 OnMouseDown的事件裡面這樣寫// ---------------------------------------------------------------------------void __fastcall TfrmMain::ListViewMouseDown(TObject*
http://blog.csdn.net/jpexe/article/details/4296955// ---------------------------------------------------------------------------// 設定服務的描述void TService1::SetDescription(WideString Desc){SC_HANDLE hSCM;SC_HANDLE hService;SERVICE_DESCRIPTION sd;hSCM =
標頭檔:#pragma once #include <string> using namespace std; // 多位元組轉寬位元組 extern wstring StrToWstring(string strsrc); // 寬位元組轉多位元組 extern string WstrToString(wstring strsrc); // 字串轉整形 extern int StrToInt(string strsrc); // 整形轉字串 extern
1. 什麼是局部類型?C# 2.0 引入了局部類型的概念。局部類型允許我們將一個類、結構或介面分成幾個部分,分別實現在幾個不同的.cs檔案中。局部類型適用於以下情況:(1) 類型特別大,不宜放在一個檔案中實現。(2) 一個類型中的一部分代碼為自動化工具產生的程式碼,不宜與我們自己編寫的代碼混合在一起。(3) 需要多人合作編寫一個類。局部類型是一個純語言層的編譯處理,不影響任何執行機制——事實上C#編譯器在編譯的時候仍會將各個部分的局部類型合并成一個完整的類。 public partial
指標是C/C++語言的特色,而數組名與指標有太多的相似,甚至很多時候,數組名可以作為指標使用。於是乎,很多程式設計者就被搞糊塗了。而許多的大學老師,他們在C語言的教學過程中也錯誤得給學生講解:"數組名就是指標"。很幸運,我的大學老師就是其中之一。時至今日,我日複一日地進行著C/C++項目的開發,而身邊還一直充滿這樣的程式員,他們保留著"數組名就是指標"的誤解。 想必這種誤解的根源在於國內某著名的C程式設計教程。如果這篇文章能夠糾正許多中國程式員對數組名和指標的誤解,筆者就不甚欣慰了。藉此文,筆
一、引言
在C語言中,假設我們有這樣的一個函數:int function(int a,int b)調用時只要用result =
來自http://blog.chinaunix.net/u2/62910/showart_492571.html 假設在ANSI C程式中定義了一個名為MyStruct的結構類型,其中有一個名為MyField的欄位,如何取得它在結構體中的位移? typedef struct MyStruct_tag{ // some fields ... long MyField; // other fields ...} MyStruct;
我們知道,類的私人成員在類的外部是不能被訪問的。 例如有下面的這個簡單的類:class ClxECS{private: int iPrivate;}; 那麼下面的這個函數是不能通過編譯的:void ECS_test(){ ClxECS lx; lx.iPrivate = 13; cout << lx.iPrivate << endl;} 但是,我們並不是沒有辦法來訪問類的私人成員。
有下面一個簡單的類:class ClxTest{public: ClxTest(int iSize = 13) { pszStr = new char[iSize]; }; ~ClxTest() { if(pszStr) delete []pszStr; }; lxOutput() { cout << pszStr << endl; };private: char *pszStr;};
在業務複雜的應用程式中,有時候會要求一個或者多個任務在一定的時間或者一定的時間間隔內計划進行,比如定時備份或同步資料庫,定時寄送電子郵件等,我們稱之為計劃任務。實現計劃任務的方法也有很多,可以採用SQLAgent執行預存程序來實現,也可以採用Windows任務發送器來實現,也可以使用Windows服務來完成我們的計劃任務,這些方法都是很好的解決方案。但是,對於Web應用程式來說,這些方法實現起來並不是很簡單的,主機服務提供者或者不能直接提供這樣的服務,或者需要你支付許多額外的費用。
指標使用中的根本問題:1. 記憶體流失;2. 野指標(指標指向已經被無效的記憶體上);尤其是當多個指標指向同一個記憶體地區的時候, 哪個指標來負責析構, 是最頭疼的事情了.針對這種情況, 應該先引出指標的所有權問題:指標指向的記憶體誰來釋放, 誰就是擁有所有權.分三類情況:1. 一個指標有清晰的所有權;2. 幾個指標共有所有權;3. 一些指標只有引用權;共用所有權指標的需求:ViSharePtr m_sp1 = new ViObj;m_sp2 = m_sp1;m_sp1 = NULL;//!
很早以前就想做一個DNS伺服器,用來應用到一些特殊的環境中,比如C/S結構的簡單負載平衡,將用戶端的請求按一定方法負載到不同的伺服器上,同時對故障伺服器實現轉移等。目前這個工程實現了網域名稱的基本解析,可以完成網域名稱到IP的轉換,但距實際使用還是有一定距離的,如果要應用到實際環境中,還需要完善。工程:http://download.csdn.net/detail/xunpo/4449410
在《高品質編程指南_林銳》的第九章開頭部分有一段話, "預設的拷貝建構函式 和 預設的賦值函數 均採用 '位拷貝' 而非 '值拷貝' 的方式實現, 倘若類中含有指標變數, 這兩個函數註定將出錯 " 其中吸引我眼球的是 "位拷貝" 這個字眼, E文好像是 "bitwise copy", 全稱"逐位拷貝". 沒看過E文原版的, 這些是網上看到的. 說實話, 拋出一個概念性的東西, 而沒有作一定的解釋,
#include <iostream>#include <cmath> /* 作者: lin49940 日期: 2010.4.28*/int sign(int x){ int a[3] = {-1, 1, 0}; return a[(x + 2)/(abs(x)+1)]; //+1 是為了避免除0的情況}int main(){ using namespace std; cout << sign(19) <
C風格字串:對字串進行操作的 C 函數定義在標頭檔<cstring>中; 1. 字串定義:char* result; 2. 字串的最後一個字元是null字元('/0'),可以通過這個字元確定字串的結尾。 3. strlen()返回的是字串的大小;因此,分配空間的時候,需要比字串的實際空間大1. e.g. char* copyString(const char* inString) { char
#include <iostream>using namespace std;class C{ public: C(){cout << "chuangjiang C" << endl;} C(const C &other){cout << "coping C" << endl;} C & operator = (const C
#include <iostream>#include <io.h>#include <string>/* 作者: lin49940 日期: 2010.5.1 */using namespace std;/* * 查詢指定的目錄下的檔案和檔案夾, 返回其數目, * 檔案和檔案夾資訊儲存在指標pfile 指向的_finddata_t 數組中 * 參數: dirPath 指定目錄; * 參數: pfile 指標,
廢話不多說, 先看看下面的代碼! class ClassA{ private: int m_a; public: void copy(const ClassA &other) { m_a = other.m_a; } } 很多人會問了m_a 是類
#include <iostream>class Mytime{ private: int hours; int minutes; public: Mytime(int h = 0, int m = 0):hours(h),minutes(m){} Mytime(const Mytime