《高質量程式設計指南 C C語言》 林銳

2021-06-21 13:01:24 字數 1650 閱讀 3212

一、c++ 檔案結構

c++/c 程式的標頭檔案以「.h」為字尾,c 程式的定義檔案以「. c」為字尾,c++程式

的定義檔案通常以「.cpp」為字尾

(1)、標頭檔案結構(*.h):

標頭檔案由三部分內容組成:

(1)標頭檔案開頭處的版權和版本宣告。

(2)預處理塊。

(3)函式和類結構宣告等。

為了防止標頭檔案被重複引用,應當用ifndef/define/endif 結構產生預

處理塊。

用#include 格式來引用標準庫的標頭檔案。

用#include 「filename.h」 格式來引用非標準庫的標頭檔案。

eg:#ifndef graphics_h // 防止 graphics.h 被重複引用

#define graphics_h

#include // 引用標準庫的標頭檔案

#include 「myheader.h」 // 引用非標準庫的標頭檔案

void function1(); // 全域性函式宣告

class box // 類結構宣告

;#endif

(2)、定義檔案的結構:

定義檔案開頭處的版權和版本宣告

對一些標頭檔案的引用。

程式的實現體(包括資料和**)。

#include 「graphics.h」// 引用標頭檔案

// 全域性函式的實現體

void function1(?)

// 類成員函式的實現體

void box::draw(?)

二、命名:

【規則 3-2-2】變數和引數用小寫字母開頭的單詞組合而成。

例如:bool flag;

int drawmode;

【規則 3-2-3】常量全用大寫的字母,用下劃線分割單詞。

例如:const int max = 100;

const int max_length = 100;

【規則 3-2-4】靜態變數加字首s_(表示static)。

例如:void init(…)

【規則 3-2-5】如果不得已需要全域性變數,則使全域性變數加字首g_(表示global)。

例如:int g_howmanypeople; // 全域性變數

int g_howmuchmoney; // 全域性變數

【規則 3-2-6】類的資料成員加字首m_(表示member),這樣可以避免資料成員與

成員函式的引數同名。

例如:void object::setvalue(int width, int height)

三、常量

常量用來表示那些將在程式中多次出現的數字或字串。

需要對外提供的常量一般放在標頭檔案中。不需要發布的放在定義檔案的頭部。

const int max = 100

類中的常量:

不能在類中初始化const資料成員。

class a

const資料成員只能在建構函式初始化列表中進行。

class a

呼叫:a a(100)

使用列舉型別可以在整個類中建立恆定的常量。

class a 

;//列舉常量。

int array[size1];

int array[size2];  }

三、函式設計

林銳C C 高質量程式設計指南之二

只是記了一部分我認為比較難理解的,或常用的,部分掌握的就沒有寫。規則 7 2 1 用 malloc 或 new 申請記憶體之後,應該立即檢查指標值是否為 null。防止使用指標值為 null 的記憶體。規則 7 2 2 不要忘記為陣列和動態記憶體賦初值。防止將未被初始化的記憶體作為右 值使用。規則 ...

高質量C C程式設計指南

1.如果引數是指標,且僅作輸入用,則應在型別前加const,以防止該指標在函式體內被意外修改 2.在函式體的 入口處 對引數的有效性進行檢查 在函式體的 出口處 對return語句的正確性和效率進行檢查 3.引用的一些規則如下 1 引用被建立的同時必須被初始化 指標則可以在任何時候被初始化 2 不能...

高質量C C程式設計指南

目錄 前 言.6 第1章檔案結構 11 1.1 版權和版本的宣告 11 1.2 標頭檔案的結構 12 1.3 定義檔案的結構 13 1.4 標頭檔案的作用 13 1.5 目錄結構 14 第2章程式的版式 15 2.1 空行.15 2.2 行.16 2.3 行內的空格 17 2.4 對齊.18 2.5...