[問題] 初值陣列 對象為 指標時怎麼初始化

看板C_and_CPP作者 (Charlott.HonG)時間7年前 (2017/03/25 15:30), 7年前編輯推噓2(201)
留言3則, 1人參與, 最新討論串1/3 (看更多)
一般如果是 vector<T> 可以透過 initializer_list 直接初始化 template <typename T> class Arr { public: Arr(initializer_list<T> i): arr{i} {} vector<T> arr; }; 如果資料成員為指標,那能夠使用 initializer_list 初始化嗎? template <typename T> class Arr { public: Arr(initializer_list<T> i): len(i.size()), arr{??} {} size_t len; T* arr; }; 嘗試使用這樣並不可行呢 Arr(initializer_list<T> i): len(i.size()), arr(new[len]{i}) {} 還是只能在定義內賦值了QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.166.131.197 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1490427058.A.CDE.html ※ 編輯: hunandy14 (218.166.131.197), 03/25/2017 15:34:34

03/25 21:22, , 1F
自己new出來的動態陣列沒有那麼美的事,想跳過迴圈就
03/25 21:22, 1F

03/25 21:22, , 2F
對全部元素賦值
03/25 21:22, 2F

03/25 21:25, , 3F
仔細想一下就能知道i不能這樣放進arr
03/25 21:25, 3F
了解~ 感謝 ※ 編輯: hunandy14 (114.39.160.105), 03/25/2017 21:49:29
文章代碼(AID): #1OrXoopU (C_and_CPP)
文章代碼(AID): #1OrXoopU (C_and_CPP)