作者Brothre23 (哈姆妍)
看板C_and_CPP
标题[问题] 传参数进class的建构函式
时间Sun Oct 1 11:32:06 2017
我现在想用vector的方式操作merge sort
所以在main函式宣告好资料的阵列之後想转成vector丢进我的物件
可是问题是 如果我把阵列大小也就是n当成参数传入建构函式就没问题
那为什麽在建构函式里才算阵列大小就会出错@@
像这样
http://codepad.org/cJMXRzZl
还是板上各位还有推荐什麽方法可以把array转成vector呢~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.228.108.250
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1506828730.A.D94.html
1F:→ bluesoul: array size 要另外传,你这样只能得到pointer size 10/01 11:52
是因为我传阵列指标进去 所以对sizeof(array)来说它的大小就只是一个pointer吗?
2F:→ stucode: 因为阵列 decay 成指标之後就失去维度资讯了。 10/01 12:02
3F:→ bluesoul: 对,你阵列大小要另外传 10/01 12:02
我懂了 谢谢b大和s大~
※ 编辑: Brothre23 (36.228.108.250), 10/01/2017 12:23:58
4F:→ diabloevagto: 你 sizeof 得到的是指向 array 的 pointer 大小 10/01 23:14
5F:→ diabloevagto: 不是被指向的 array 大小 10/01 23:15
6F:推 Killercat: 现在有Initialization List了 直接vector当参数吧 10/06 21:49
7F:→ Killercat: 诶打错 应该是Initializer List...名字搞那麽像 囧 10/06 21:50
8F:→ Killercat: 请参阅std::initializer_list 10/06 21:53
9F:→ Killercat: 发现手误 应该是「直接放array进去当参数」 10/06 21:54