国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 電腦知識 > 正文

你必須注意的11個C++要點

2024-05-08 13:52:20
字體:
來源:轉載
供稿:網友

下面的這些要點是對所有的C++程序員都適用的。我之所以說它們是最重要的,是因為這些要點中提到的是你通常在C++書中或網站上無法找到的。如:指向成員的指針,這是許多資料中都不愿提到的地方,也是經常出錯的地方,甚至是對一些高級的C++程序員也是如此。

這里的要點不僅僅是解釋怎樣寫出更好的代碼,更多的是展現出語言規則里面的東西。很顯然,它們對C++程序員來說是永久的好資料。我相信這一篇文章會使你收獲不小。

首先,我把一些由不同層次的C++程序員經常問的問題歸到一起。我驚奇的發現有很多是有經驗的程序員都還沒意識到 .h 符號是否還應該出現在標準頭文件中。

要點1: <iostream.h> 還是 <iostream>?

很多C++程序員還在使用<iostream.h>而不是用更新的標準的<iostream>庫。這兩者都有什么不同呢?首先,5年前我們就開始反對把.h符號繼續用在標準的頭文件中。繼續使用過時的規則可不是個好的方法。從功能性的角度來講,<iostream>包含了一系列模板化的I/O類,相反地<iostream.h>只僅僅是支持字符流。另外,輸入輸出流的C++標準規范接口在一些微妙的細節上都已改進,因此,<iostream>和<iostream.h>在接口和執行上都是不同的。最后,<iostream>的各組成都是以STL的形式聲明的,然而<iostream.h>的各組成都是聲明成全局型的。

因為這些實質上的不同,你不能在一個程序中混淆使用這兩個庫。做為一種習慣,在新的代碼中一般使用<iostream>,但如果你處理的是過去編寫的代碼,為了繼承可以用繼續用<iostream.h>舊保持代碼的一致性。

要點2:用引用傳遞參數時應注意的地方

在用引用傳遞參數時,最好把引用聲明為const類型。這樣做的好處是:告訴程序不能修改這個參數。在下面的這個例子中函數f()就是傳遞的引用:

void f(const int & i);

int main()

{

f(2); /* OK */

}

這個程序傳遞一個參數2給f()。在運行時,C++創建一個值為2的int類型的臨時變量,并傳遞它的引用給f().這個臨時變量和它的引用從f()被調用開始被創建并存在直到函數返回。返回時,就被馬上刪除。注意,如果我們不在引用前加上const限定詞,則函數f()可能會更改它參數的值,更可能會使程序產生意想不到的行為。所以,別忘了const。

這個要點也適用于用戶定義的對象。你可以給臨時對象也加上引用如果是const類型:

struct A{};

void f(const A& a);

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 苏尼特左旗| 陈巴尔虎旗| 连南| 绥芬河市| 赣榆县| 温宿县| 准格尔旗| 丹凤县| 秦皇岛市| 普兰县| 万州区| 麻阳| 合作市| 锡林浩特市| 静安区| 丰城市| 阜阳市| 陈巴尔虎旗| 温宿县| 全椒县| 乌鲁木齐县| 陆川县| 米脂县| 龙里县| 彭水| 高阳县| 平原县| 罗源县| 曲阜市| 石屏县| 闸北区| 应用必备| 遂昌县| 武邑县| 双江| 瓮安县| 辽宁省| 夏邑县| 安宁市| 稻城县| 千阳县|