程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 總結C++開發技巧

總結C++開發技巧

編輯:C++入門知識

在進行C++開發時,僅僅是它的語法、特性、標准類庫就已經是一門非常高深的課程,所以在開始學習的時候,一定要認真仔細,這樣才能及時准確的編譯出自己想要的程序。

當初我寫第一個 NT 服務時,我到 MSDN 上找例子。在那裡我找到了一篇 Nigel Thompson 寫的文章:“Creating a Simple Win32 Service in C++”,這篇文章附帶一個 C++ 例子。雖然這篇文章很好地解釋了服務的開發過程。

但是,我仍然感覺缺少我需要的重要信息。我想理解通過什麼框架,調用什麼函數,以及何時調用,但 C++ 在這方面沒有讓我輕松多少。面向對象的方法固然方便,但由於用類對底層 Win32 函數調用進行了封裝。

  • 教您使用Visual C++制作新聞閱讀器
  • 如何使用C++制作Windows的關機事件
  • 解決C++Test自動生成的測試問題
  • 玩轉C++語言的幾種方法
  • C++程序中的難點大揭秘

它不利於學習服務程序的基本知識。這就是為什麼我覺得 C++更加適合於編寫初級服務程序或者實現簡單後台任務的服務。在你對服務程序有了充分透徹的理解之後,用 C++ 編寫才能游刃有余。當我離開原來的工作崗位,不得不向另一個人轉移我的知識的時候,利用我用 C++所寫的例子就非常容易解釋 NT 服務之所以然。

  • 教您使用Visual C++制作新聞閱讀器
  • 如何使用C++制作Windows的關機事件
  • 解決C++Test自動生成的測試問題
  • 玩轉C++語言的幾種方法
  • C++程序中的難點大揭秘

服務是一個運行在後台並實現勿需用戶交互的任務的控制台程序。Windows NT/2000/XP 操作系統提供為服務程序提供專門的支持。人們可以用服務控制面板來配置安裝好的服務程序,也就是 Windows 2000/XP 控制面板|管理工具中的“服務”(或在“開始”|“運行”對話框中輸入 services.msc /s——譯者注)。可以將

首先,包含所需的頭文件。例子要調用 Win32 函數(windows.h)和磁盤文件寫入(stdio.h):

  1. #include   
  2. #include 

接著,定義兩個常量:

  1. #define SLEEP_TIME 5000   
  2. #define LOGFILE "C:\\MyServices\\memstatus.txt" 

SLEEP_TIME 指定兩次連續查詢可用內存之間的毫秒間隔。在第二步中編寫服務工作循環的時候要使用該常量。LOGFILE 定義日志文件的路徑,你將會用 WriteToLog 函數將內存查詢的結果輸出到該文件,WriteToLog 函數定義如下:

  1. int WriteToLog(char* str)   
  2. {   
  3. FILE* log;   
  4. log = fopen(LOGFILE, "a+");   
  5. if (log == NULL)   
  6. return -1;   
  7. fprintf(log, "%s\n", str);   
  8. fclose(log);   
  9. return 0;   

聲明幾個全局變量,C++ 以便在程序的多個函數之間共享它們值。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved