這一章主要介紹了c++中的基本數據類型,還有一些編程的技巧。
記錄有如下幾點:
1.通過增加後綴,能夠強制將字面值整數常量轉換為long或unsigned,unsigned long類型,如
1L /*long*/
小數點後加L表示擴展精度。
2.聲明和定義的區別:
定義用於為變量分配存儲空間,還可以為變量指定初始值,聲明用於向程序表明變量的類型和名字。
變量必須且僅能定義一次,而且在使用變量之前必須定義或聲明變量。
3.循環的條件語句中最好不要直接使用數字,如
for(int index=0;index!=512;++index)
{...}
最好寫成:
int bufSize=512;
for(int index=0;index!=bufSize;++index)
{...}
主要是可讀性和健壯性會好很多;
4.const的使用
1)定義const對象
由const定義的對象為常量,定義時必須初始化,之後不能被修改。
在全局范圍內,非const變量默認為extren,要使const變量能夠在其他的文件中訪問,必須顯示地指定它為extren。
5.引用
引用即為變量的別名,如
#include <iostream>
using namespace std;
int main()
{
int a=1;
int &refer=a;
refer+=2;
cout<<a<<endl;
return 0;
}
這裡輸出的是3.
關於const引用,
const引用是“指向const對象的引用”,可以綁定到不同但相關的類型的對象或綁定到右值,
非const引用指向非const類型的引用,只能綁定到與該引用同類型的對象。
6.typedef的作用
1)為了隱藏特定類型的實現,強調使用類新的目的;
2)簡化復雜的類型定義,使其更易理解;
3)允許一種類型用於多個目的,同時使得每次使用該類型的目的明確。
個人感覺是增強程序的可讀性。
7.枚舉類型的對象初始化或賦值,只能通過其枚舉成員或同一枚舉類型的其他對象來進行;
枚舉成員本身就是一個常量表達式,所以也可用於需要常量表達式的任何地方。
8.在頭文件中不應該含有變量或函數的定義,擔憂例外:可以定義類、值在編譯時就知道的const對象和inline函數;
9設計頭文件時,應使其可以多次包含在同一源文件中,必須保證多次包含同一文件不會引起沖突。通常做法是使用預處理器定義頭文件保護符。
例:
#ifndef SALESITEM_H
#define SALESITEM_H
//定義類
#endif
說明:
#ifndef檢測指定的預處理器變量是否未定義。
#define接受一個名字並定義該名字為預處理變量。接著執行後面的定義,#endif表示結束。
摘自 左腦設計,右腦編程