原创 進程控制與進程通信編程

進程控制與進程通信編程 作者:宋寶華  1.Linux進程        Linux進程在內存中包含三部分數據:代碼段、堆棧段和數據段。代碼段存放了程序的代碼。代碼段可以爲機器中運行同一程序的數個進程共享。堆棧段存放的是子程序(函數)的

原创 我的第一篇博客文章-----JavaBean應用

本來是用筆記本記下來的,後來發現記在QQ空間或者CSDN博客也不錯,我以後把自己的學習經歷留在這裏,同時也接收大家的提醒,對自己更有益。 1、Tomcat、JAVA環境配置就略過,直接採用MyEclipse建立Web Project工程,

原创 類與結構體的大小

類的大小由其成員變量決定,結構體同樣。請看下面的結果。 #include <iostream>using namespace std; class A1  {public: int a; static b;      //靜態變量存放在全

原创 有名管道

mkfifo(建立實名管道)相關函數pipe,popen,open,umask表頭文件#include#include定義函數int mkfifo(const char * pathname,mode_t mode);函數說明mkfifo

原创 數組和指針

天天在看程序,經常在寫程序,對於基本的數組和指針,從來沒有進行深刻的總結過。數組和指針,是程序分配內存的兩種方式,對於不同的情況應該採用不同的策略。一般來說,提倡採用動態分配的方式來處理內存分配,按需分配,那就是用到指針了。但是,當分配的

原创 對象使用完成後

class base { public: base() { cout << "base()"; } ~base() { cout << "~base()"; } }; class subs: public base { pub

原创 倫理

我們知道malloc要和free成對出現,new要和delete成對出現,這樣才安全,假使兩對夫妻將他們拆爲兩對,那麼這拆開的兩對在一起工作時會安全嗎? 所以,我們一定要成對出現,即使我們的貞操觀念很強,倫理上也不符合。  

原创 儘量用const和inline而不用#define

#define可以將“表達式”替換“函數”,形式 上完成了函數的功能,但是有些時候會出現問題,這時我們可以使用inline來取代#define。 用#define定義常量時,用const會更安全,因爲#define使用的是預處理器,而co

原创 “throw e”和“throw”

前者會產生臨時對象,然後往上一級跑出異常。     C++的異常匹配規格是根據對象的靜態類型進行匹配的

原创 Android初試

第1章  Android應用程序開發步驟 通過邊學習邊記錄的方式瞭解Android開發應用程序的方法。 1.1  建立界面 建立界面主要是通過編寫XML文檔。 1.1.1  應用程序的主界面爲res/layout/main.xml ma

原创 父類的構造函數中最好不要調用虛函數

class Base{ public: int a; Base(){print();}; virtual ~Base(){ g_iCount += 1;} public: int getA(){} void setA(int i

原创 友元和繼承訪問類成員的方式的區別

class dog{ public: void shout(){cout<<"dog"<<endl;} friend class pig; dog(){dogyear=0;} ~dog(){} protected: int do

原创 析構函數可以是純虛函數

雖然抽象類的析構函數可以是純虛函數,但要實例化其派生類對象,仍必須提供抽象基類中析構函數的函數體。   抽象類的純虛函數的實現可以由自身給出,也可以由派生類給出. 錯了,除了析構函數外,其他函數都不行,必須要在派生類中進行實現。

原创 父類的構造函數中不能調用純虛函數,同樣在析構函數中不能調用純虛函數

#include <iostream> #include <string> using namespace std; class CParent { public: CParent() {} virtual ~CPar

原创 函數模板 缺省情況下是內聯的。

在類的聲明時,其成員函數的函數體寫在類的結構體中時,認爲其成員函數爲默認的內聯函數。其他的默認都不是內聯函數。