2011-12-01 56 views
0

我讀pointerC裝飾,使C一種特殊的語言。不過,我也用C++中的指針。我認爲在C++中使用指針比在C中有一些限制。由於指針是C的數據類型。如果我被要求編寫純粹的程序C++,我可以使用指針嗎?指針可以在純C++中使用嗎?

+5

C++ *是* C的擴展它甚至在大多數情況下它的超集(有幾個顯着的功能C++不支持,如果考慮C99,則更多,但絕大多數C工作原理未改變,包括指針)。你從哪裏得到相反的信息? – delnan

+0

我的意思是續集版本。對不起。我將編輯那一個。 – nebula

+0

其實,從指針間接使用匯編語言尋址來了,所以他們是不是真的特別是剛下 – kfmfe04

回答

8

Ofcourse,你可以使用C指針++。有些情況下指針是唯一的出路。例如:使用動態內存分配。

有關C++中指針的一件特別的事情是C++提供了Smart pointers這可以讓你的生活更輕鬆。喜歡他們在原始c像指針。

本文內容爲:
使用適合您實施需求的內容。不遵守固定的規則,沒有真正的。

+2

...但如果可能的話,使用*智能指針*而不是原始... – Nim

+0

@Nim:剛纔正要補充說, 。 –

+0

......認爲這是答案的第一次迭代...... :) – Nim

0

是的。事實上,對於更復雜的程序,很可能沒有其他辦法:如果你需要做任何動態分配(你使用new做的那種),你會得到一個指針。

此外,C++真的是C.大多數的擴展(如果不是全部)有效的C代碼是有效的C++代碼。這對於例如原因C++有一個struct關鍵字之一:它需要與C向後兼容

+1

從我們現在的位置我們可以說C++ 03與C89類似,但有細微的差異。 C99分歧很大。 – Abhijit

相關問題