※ 引述《PolarBear.bbs@fpg.m4.ntu.edu.tw (幸福的男孩)》之銘言:
: 請問大家C和C++除了一個不是物件導向一個是之外
: 那麼語法上有何不同呢?
: 知道的人可否回信一下,謝謝!!
ANSI C++ 在很多部分都和 C 有著差異...
在 include 檔的用法上...
原先的 #include <iostream.h>
應該改成 #include <iostream> (因為那個是 C++的library)
原先的 #include <stdio.h>
應該改成 #include <cstdio> (因為那個是 C 的 library)
在變數宣告的方面, ANSI C要求設計者在每個函式的最前面
就宣告完全部所要用的變數,而 C++ 則可以在任何你想要的
地方宣告....
型別轉換的部分,C++提供了 dynamic_cast、static_cast
,以及 reinterpret_cast 來做各種的型別轉換,並由此
設計出相關的 RTTI 能力(Run-Time Type Information/Identification)
,讓設計者能在執行時期判斷一個物件的type...
另外, C++ 的 template 與 overloaded function可以說是
取代先前 C 的 macro 的一個幫手...
它提供了安全的型別檢查能力,而且也可以替設計者省下很多時間...
......其實兩者的差異相當相當的大....
這一點只是一時之間能想出來的...
實際的差異等到你用過就可以體會了吧....
並不是容易用寫的寫出來的....^^;
--
人非聖賢,孰能無過,但要真正把事情搞砸,還要電腦幫忙才行。
--
※ 發信站: 批踢踢實業坊(ptt.twbbs.org)
◆ From: t207-110.dialup