問題詳情
下列以 C++語言撰寫之程式執行後的輸出為何?#include <iostream> using namespace std; class P { public: P() { val_= 1; } int val_; }; class Q { public: Q() { val_= 1; } P p_; int val_; }; int main() { Q q; cout << q.val_ << ' ' << q.p_.val_ ; return 0 ; }
(A) 1 1
(B) 1 0
(C) 0 1
(D) 0 0
參考答案
答案:A
難度:適中0.5
統計:A(19),B(8),C(7),D(0),E(0)
用户評論
【用戶】Clown(2021上岸
【年級】大三下
【評論內容】q.val_ 是Q裡面的val_變數要看他的值是什麼我們可以去看Q的建構子可看到在物件建立的時候給予 val_ = 1因此可以知道 q.val_ = 1接著看q.p_.val_我們可以把它拆解成 q.p_ . val_用白話來說就是 Q物件裡面的 P物件的 val_變數值接下來往上找回去會發現調用到那個的變數的數值的部分也是只有在建構子的時候P() { val_= 1; } 因此可以知道 q.p_.val_ = 1最終GET答案 1 1