精華區beta Programming 關於我們 聯絡資訊
※ 引述《journeyman@kkcity.com.tw (㊣科學秘招~雷電閃光~)》之銘言: > 這是constructor的簡寫嘛。 這個正式的名稱叫 member initialization list, 其實也不叫做 constructor 的簡寫, 它存在的意義並不單純是為了方便。 > 相當於 > DivideByZero(int n, int d) > { num=n; denom=d; message="Divide by zero"; } 如果只是要幫助瞭解是可以這麼說, 不過它實際的動作不一樣, 對 message 而言, message("Divide by zero") 這種寫法是直接呼叫它的 constructor, 而 message = "Divide by zero" 是呼叫它的 operator=() 設值。 另外對 const data member 而言, 用 member initialization list 設初值是合法的動作, 但是寫在 constructor 裡面用 assignment 設值就不行。 -- Name: Tseng, Ling-hua E-mail Address: uranus@it.muds.net School: National Chung Cheng University Department: Computer Science and Information Engineering Researching: Porting GCC and Implementing VLIW instruction scheduler in GCC Homepage: https://it.muds.net/~uranus -- ╔═══╗ ┼────────────────────────╮ 狂狷 Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮ 年少 ┼╮ < IP:140.119.164.16 > ╰─╮ ╚╦═╦╝ From:218-171-142-71.dynamic.hinet.net ─╨─╨─ KGBBS 遨翔"BBS"的狂狷不馴;屬於年少的輕狂色彩