Re: [問題] 普考102年的一項考題
http://codepad.org/gW7aZv5Q
這題最主要是考建構解構
※ 引述《GoOnDino (Cyborg Ring)》之銘言:
: 102年普考有個題目敘述如下的C++程式
: #include <iostream>
: using namespace std;
: class P
: {
: public:
: P() { cout << 'B'; }
: ~P() {cout << 'D'; }
: };
: int main()
: {
: P p;
這時候建構,印出 "B"
: cout << '1'; "1"
: if (true)
"true"只是代表會進去這個if而已,true,false是系統預設
: {
: cout << '2'; "2"
: P p2;
這時候又建構 "B"
: }
離開這個if的scope,裡面的p2會解構,會印出D
"D"
: cout << '3'; "3"
: return 0;
: }
整個程式結束,p會解構,會印出D
"D"
: 上述C++程式的結果為
: B12BD3D
: 請問為什麼?
: if (true)中,是哪個變數為true?
true是系統預設,keyword保留字,就像if,while,return
c++ keywords
http://en.cppreference.com/w/cpp/keyword
--
『想要我的財寶嗎?想要的話 自己去拿吧!
我把所有的寶藏都藏在Buddha了!』
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.171.78.23
※ 編輯: flydragon198 來自: 118.171.78.23 (07/22 13:31)
推
07/22 15:53, , 1F
07/22 15:53, 1F
推
07/23 08:29, , 2F
07/23 08:29, 2F
推
08/08 15:50, , 3F
08/08 15:50, 3F
討論串 (同標題文章)
完整討論串 (本文為第 3 之 3 篇):
問題
6
14