nullptr
的出現是為了替代null
,在傳統c++中會將null、0
視為同一種東西,這取決於編譯器如何定義null
,有些編譯器會將null
定義為((void *)0)
,有些則會直接定義為0
。c++不允許將void *
隱式轉換為其它型別,但若null
被定義為((void *)0)
,那麼當編譯char *ch = null
時,null
只好被定義為0
,而這依然會產生問題,將會導致過載特性發生混亂,例如:
若void foo(char *);
void foo(int);
null
又被定義為0
,那麼foo(null)
將會去呼叫foo(int)
,從而導致混亂。
為了解決這個問題,c++11中引入了nullptr
關鍵字
C 新特性之一 對語言可用性的增強 下篇)
接上篇,本文繼續對c 新特性中的對語言可用性的增強進行歸納介紹。c 11中引入了委託構造的概念,這使得建構函式可以在同乙個類中,乙個建構函式可以呼叫另乙個建構函式,從而達到簡化 的目的。下面是乙個例子 class base base int value base int main 在傳統c 中,建構...
Flash與Web可用性之一 問題
關心web可用性的朋友可能聽說過jakob nielsen大師寫過的一篇著名的文章 flash 99 bad 這篇文章是nielsen在2000年寫的,指出了濫用flash對於web可用性造成的惡果。ajax技術出現之後,還有人東施效颦地寫了一篇 ajax 99 bad nielsen指出在大量使用...
Flash與Web可用性之一 問題
關心web可用性的朋友可能聽說過jakob nielsen大師寫過的一篇著名的文章 flash 99 bad 這篇文章是nielsen在2000年寫的,指出了濫用flash對於web可用性造成的惡果。ajax技術出現之後,還有人東施效颦地寫了一篇 ajax 99 bad nielsen指出在大量使用...