[分析]:題目的考查點,靜態物件的建立及執行。類中的靜態物件只會執行一次,這是輸出上面結果的原因。
[擴充套件分析]:此種靜態物件的題目之前在360面試的時候被問到過,後來在《深入淺出mfc》基礎部分講解c++重要性質之——c++程式的生與死:兼談建構函式與析構函式部分的示例很能說明問題。
#include
using namespace std;
class cdemo;
cdemo:
:cdemo
(const
char
* str)
cdemo::~
cdemo()
;void
func()
//9析構localobjectinfunc //13析構localobjectinfunc
void cdemo:
:showobjectname()
//顯示物件名
cdemo globalobject
("globalobject");
//1int
main()
//15析構localobjectinmain //16析構staticobject //17析構globalobject
c 四種不同的物件生存方式
在c 中,有四種方法可以產生乙個物件。第一種方法是在堆疊 stack 之中產生它 void myfunc 第二種方法是在堆積 heap 之中產生它 void myfunc 第三種方法是產生乙個全域物件 同時也必然是個靜態物件 cfoo foo 在任何函式範圍之外做此動作 第四種方法是產生乙個區域靜態...
棧的四種方式
按棧指標指向有滿 full 空 empty 滿 sp指向最後乙個壓入的資料 即先修改sp到指向下一目標位置,再存入相應的值 如 push rx sp rx 空 sp指向下乙個空的位置,即先存入相應的值,再修改sp到指向下一目標位置 如 push rx pop rx sp rx 根據壓棧向棧指標的變數...
C 物件賦值的四種方式
1.引用作為引數的方式傳遞.getobject object obj obj.value value1 特點 在外部構造乙個物件.把該物件以引用的方式傳遞到函式中.從而實現對該物件的改變,該引數實質是乙個 out 型別的引數,而非 in 型別的引數.這裡的引用可以稱為別名.點評 這種方式需要特別的注...