青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

勤能補拙,Expter

成都游戲Coder,記錄游戲開發過程的筆記和心得!

金山2009校園招聘成都一筆試題

 1# include <iostream>
 2using namespace std;
 3
 4class base
 5{
 6public:
 7    base()
 8    {
 9        cout <<" base::val "<<endl;
10        val = 12345;
11        print();
12    }

13    base(int x)
14    {
15        val = x;
16        cout << " "<<endl;
17    }

18    virtual void print()
19    {
20        cout << " base:print(), val = "<<val<<endl;
21    }

22    base & operator = (int x)
23    {
24        val = x;
25        cout <<" base::operator, val = "<<x<<endl;
26        return *this;
27    }

28    void relase()
29    {
30        cout << " base::relase" <<endl;
31    }

32    ~base()
33    {
34        cout << " ~base::val = "<< val <<endl;
35    }

36protected:
37    int  val;
38}
;
39
40class deiver:public base
41{
42public:
43    deiver()
44    {
45        cout << " deiver::val "<<endl;
46    }

47    
48    deiver(int x)
49    {
50        val = x;
51        print();
52    }

53    void print()
54    {
55        cout << " deiver::print(), val =  "<< val <<endl;
56    }

57    void relase()
58    {
59        cout << " deiver::relase, val = "<<val<<endl;
60    }

61    deiver & operator = (int x)
62    {
63        val = x;
64        cout <<" deiver::operator, val = "<<x<<endl;
65        return *this;
66    }

67    ~deiver()
68    {
69        cout << " deiver::~deiver "<<endl;
70    }

71}
;
72void des(base * b)
73{
74    b->print();
75    b->relase();
76}

77deiver  de = 98765;
78int main()
79{
80        deiver  * dee = new deiver;
81    *(base *)dee = 100;
82    des(dee);
83
84    return 0;
85}

86

輸出結果。。。
因為de是全局變量,所以先調用基類構造函數,在調用子類的帶int的構造方法。。
然后dee同理先基類構造函數,然后調用默認構造函數。

最后dee強制轉換為基類指針進行復制,根據多態,調用基類的operator=方法
最后調用子類的print和父類的relase方法。

因為print是虛函數


運算結果為
 base::val
 base:print(), val = 12345
 deiver::print(), val =  98765
 base::val
 base:print(), val = 12345
 deiver::val
 base::operator, val = 100
 deiver::print(), val =  100
 base::relase

posted on 2008-10-20 20:30 expter 閱讀(3662) 評論(10)  編輯 收藏 引用 所屬分類: 面試筆記

評論

# re: 金山2009校園招聘成都一筆試題 2008-10-20 21:53 zllp@live.com

The destructor of class base should be virtual, I think.  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題 2008-10-21 01:20 Fox

并不是所有基類的析構都要virtual的,此例即不需要,因為這兒的析構是trivial的,推薦閱讀lippman的<inside the c++ object model>.

  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題 2008-10-21 08:56 powerlang

base::val
base:print(), val = 12345
deiver::print(), val = 98765
base::val
base:print(), val = 12345
deiver::val
base::operator, val = 100
deiver::print(), val = 100
base::relase
deiver::~deiver
~base::val = 98765


上面是我運行的結果,很奇怪,全局變量沒有析構  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題[未登錄] 2008-10-21 09:18 Kevin Lynx

@Fox
從設計角度來看,即使destructor是trivial的,但是因為基類和派生類存在多態的使用,即對于應用層而言有類似的代碼:
base *pObj = new derived();
那么,destructor都應該為virtual的。
  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題[未登錄] 2008-10-21 09:19 Kevin Lynx

據以前在金山工作過的兩個朋友所說,金山加班嚴重(就是成都金山),不敢去。想多活幾年。
  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題 2008-10-21 11:28 許海林

小弟有個疑問:
將上面程序稍作改動:
deiver dee;
(base )dee = 100;
dee.print();
dee.relase();
des(&dee);

輸入結果會出現:
base::operator, val = 100
~base::val = 100
deiver::print(), val = 12345

為什么重載的dee對象立即被析構?
小弟不甚明白。。。  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題 2008-10-21 20:18 空明流轉

slice會產生臨時對象。  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題 2008-10-26 14:42 金山詞霸2008

北京金山可能最清閑,總不組要負責廣告和聯盟業務。  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題 2009-08-24 00:40 bicheng.gui@gmail.com

@powerlang


deiver::~deiver
~base::val = 98765
這兩個就是全局對象的析構啊!!注意val的值,是全局變量里的值。
樓主給的輸出里忘記這兩個析構函數了。

另外,有朋友說這兩個析構函數是trivial的,實際上我認為,只要用戶定義了析構函數,那么析構函數從編譯器的角度來講就不是trivial的了,此時編譯器不為你生成析構函數。

另外,作為base class, 析構函數要聲明為virtual。這是c++ FAQ list里的一條。  回復  更多評論   

# re: 金山2009校園招聘成都一筆試題[未登錄] 2009-09-06 19:27 小強

會產生臨時對象的  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久一区二区三区av| 在线亚洲成人| 久久亚洲一区| 久久久久国产一区二区| 一区在线观看视频| 欧美电影免费观看大全| 欧美69wwwcom| 亚洲欧美国产毛片在线| 亚洲伊人伊色伊影伊综合网| 国内在线观看一区二区三区 | 国产精品亚洲网站| 久久精品国产清自在天天线| 久久婷婷人人澡人人喊人人爽| 亚洲黄网站在线观看| 99精品国产高清一区二区| 国产精品一二三视频| 久久久午夜电影| 欧美黄在线观看| 欧美诱惑福利视频| 欧美ed2k| 久久精彩视频| 欧美日韩国产精品一区| 香蕉久久夜色| 欧美承认网站| 久久狠狠久久综合桃花| 欧美国产先锋| 久久久久国产精品午夜一区| 久久视频国产精品免费视频在线| 亚洲性图久久| 91久久综合| 欧美一区二区国产| 这里只有精品视频| 久久综合五月| 久久久国产精品一区二区三区| 欧美激情精品久久久久久蜜臀| 久久久久久午夜| 国产精品久99| 亚洲欧洲一级| 在线观看国产精品淫| 亚洲性感激情| 亚洲网在线观看| 欧美成人精品在线观看| 久久嫩草精品久久久精品| 国产精品第三页| 亚洲精品国产精品国自产在线 | 亚洲一区在线播放| 欧美大片在线观看| 老**午夜毛片一区二区三区| 国产精品欧美一区二区三区奶水 | 久久精品亚洲一区二区| 欧美午夜在线观看| 日韩亚洲不卡在线| 亚洲美女黄色| 欧美激情va永久在线播放| 老司机亚洲精品| 激情丁香综合| 久久久久久91香蕉国产| 久久久欧美一区二区| 国产亚洲成精品久久| 正在播放欧美视频| 午夜精品久久久久久久久久久| 欧美日韩国产大片| 亚洲开发第一视频在线播放| 日韩一级精品| 欧美女主播在线| 亚洲精品一区二区三区四区高清 | 亚洲精选成人| 亚洲一级在线| 国产精品一区视频| 小处雏高清一区二区三区| 久久精品国产一区二区三区| 韩国欧美一区| 美女脱光内衣内裤视频久久影院 | 久久亚洲综合色| 亚洲黑丝在线| 欧美日韩福利视频| 亚洲一区高清| 开元免费观看欧美电视剧网站| 狠狠色综合色综合网络| 免费久久99精品国产自| 亚洲精品久久嫩草网站秘色| 亚洲伊人网站| 激情丁香综合| 欧美日韩国产一区二区三区| 亚洲午夜高清视频| 久久久久一区二区三区| 亚洲高清资源综合久久精品| 999亚洲国产精| 国产精品露脸自拍| 久久久人成影片一区二区三区观看| 欧美成人三级在线| 亚洲视频免费观看| 国产亚洲成精品久久| 欧美大学生性色视频| 亚洲少妇中出一区| 欧美国产精品v| 亚洲欧美日韩高清| 亚洲国产婷婷综合在线精品| 欧美视频一区二区三区…| 欧美中文字幕久久| 亚洲精品在线观看免费| 久久久www成人免费精品| 亚洲精品少妇30p| 国产亚洲一区精品| 欧美日韩免费观看一区=区三区| 欧美主播一区二区三区| 亚洲伦理一区| 欧美+亚洲+精品+三区| 亚洲男人第一网站| 亚洲美女啪啪| 在线免费观看日本一区| 国产精品私人影院| 欧美日韩精品免费观看视一区二区| 久久激情视频免费观看| 一区二区三区久久久| 欧美国产高潮xxxx1819| 久久精品99国产精品日本| 一区二区高清视频| 91久久精品国产| 精品999日本| 国产私拍一区| 国产精一区二区三区| 欧美午夜片欧美片在线观看| 免费看精品久久片| 久久先锋资源| 久久黄金**| 欧美在线播放| 欧美一级播放| 午夜在线播放视频欧美| 亚洲一区二区免费| 在线性视频日韩欧美| 日韩视频在线播放| 亚洲精品在线观看免费| 亚洲另类春色国产| 亚洲每日在线| 亚洲美女尤物影院| 99pao成人国产永久免费视频| 亚洲全黄一级网站| 亚洲三级电影在线观看| 亚洲精品久久久久久一区二区| 亚洲国产一区二区视频| 亚洲欧洲视频在线| 亚洲免费观看高清完整版在线观看熊 | 欧美涩涩视频| 国产精品视频久久一区| 国产精品久久久一区二区| 国产精品成人aaaaa网站| 欧美视频成人| 国产精品夜夜夜| 国产一区二区看久久| 国产夜色精品一区二区av| 狠狠狠色丁香婷婷综合久久五月| 国产真实乱偷精品视频免| 国产专区精品视频| 亚洲国产精品嫩草影院| 亚洲欧洲一区二区三区在线观看| 亚洲日韩欧美视频| 亚洲一区二区三区四区五区黄| 亚洲欧美美女| 久久久久综合网| 亚洲高清久久网| 一区二区三区日韩精品| 久久高清福利视频| 99国产精品久久久久老师| 亚洲图片欧美一区| 久久久久久久久岛国免费| 欧美sm视频| 一区二区三区日韩欧美| 欧美一区二区在线播放| 欧美大尺度在线| 国产精品乱人伦中文| 精品999网站| 亚洲午夜在线视频| 免费久久久一本精品久久区| 亚洲日本视频| 久久精品视频在线| 欧美特黄a级高清免费大片a级| 国产一区视频网站| 一本色道久久综合亚洲精品不| 欧美在线综合| 亚洲精品国产欧美| 久久精品主播| 国产精品二区二区三区| 亚洲第一成人在线| 欧美在线www| 亚洲伦伦在线| 久久综合婷婷| 国产一区二区电影在线观看| 日韩一级大片在线| 男女精品视频| 欧美在线电影| 欧美亚韩一区| 亚洲美女一区| 欧美成人一品| 久久久91精品国产| 国产精品区一区二区三区| 一本久久青青| 欧美大片在线观看一区| 午夜日韩av| 国产精品综合不卡av|