16/09/23 16:12:15.84 1AYxo37g.net
std::array<int,3> ia = {1,2,3};
なんでいちいちサイズをしていなきゃいけないの?
コンパイラは右式からサイズを知れるはずだよね
998:デフォルトの名無しさん
16/09/23 16:43:56.15 DI5cYQNa.net
arrayがクラステンプレートだからだよ
テンプレート実引数を推定できるのは関数テンプレートだけ
999:デフォルトの名無しさん
16/09/23 16:50:29.51 Z6rdhOh4.net
もともと生配列なんて狭いスコープ内に閉じた使い方しかしてなかったし、あえてstd::array に変える気が起こらん。
1000:デフォルトの名無しさん
16/09/23 16:56:36.61 SmlWzTAW.net
arrayってoparator[]が境界チェック無いとか困る~
1001:デフォルトの名無しさん
16/09/23 17:02:31.08 1AYxo37g.net
>>983
そう・・・・
使い物にならんな、標準なんかにするなよw
1002:デフォルトの名無しさん
16/09/23 17:04:21.59 k0FhbiHl.net
サイズとか取れて便利じゃん。俺ベクタしか使ってないけど。
1003:デフォルトの名無しさん
16/09/23 18:19:30.71 z2QCychJ.net
"std::array<int> ia = {1,2,3}" という文字列を読んで、括弧内の要素数を数えて
std::array<int,3> ia = {1,2,3}として書き換えてくれるテンプレートメタプログラミングすればいんじゃね?
1004:デフォルトの名無しさん
16/09/23 18:28:49.47 Z6rdhOh4.net
template<std::size_t N> の文脈の中でだったら不要だしな
1005:デフォルトの名無しさん
16/09/23 18:41:44.36 jjS354wW.net
配列をstd::arrayに置き換えなくてはならなくなった。
と被害妄想してグチを2chで垂れるのは間違いなく人生負け組
1006:デフォルトの名無しさん
16/09/23 19:45:39.19 k/GEXWfz.net
新しいコンパイラならstd::experimental::make_arrayが使えるんでねぇの?
URLリンク(en.cppreference.com)
1007:デフォルトの名無しさん
16/09/23 20:07:45.67 1AYxo37g.net
ベタに配列でよくね?
1008:デフォルトの名無しさん
16/09/23 20:08:53.66 1AYxo37g.net
>>990
2ちゃんに居る時点で負けだろw
1009:デフォルトの名無しさん
16/09/23 20:23:26.18 Z6rdhOh4.net
algorithmにbeginとendを渡すときでも生配列でいいしな
1010:デフォルトの名無しさん
16/09/23 20:26:55.96 x7wdola9.net
シンタックスシュガー
1011:デフォルトの名無しさん
16/09/23 21:01:07.45 FB5yu9xq.net
サイズ欲しい時に変数用意したり、演算したりするのが面倒だし、余分な処理になるからじゃないの?
std::arrayはサイズ変数を保持していないし、演算もしていないし
at()使えば範囲チェックしてくれるし、生配列にも直接アクセスできるし
凄く便利だと思うけどな
1012:デフォルトの名無しさん
16/09/23 21:20:41.97 kJ5RCJcw.net
超薄型コンドームがでて、感覚上生挿入と変わらないことが統計学的に証明されていても、気持ちの問題だからと生を求める人がいる
1013:デフォルトの名無しさん
16/09/23 21:39:11.65 nEqelPbM.net
はい
1014:デフォルトの名無しさん
16/09/23 21:39:50.82 tPpdE/S0.net
難しいなぁ
1015:デフォルトの名無しさん
16/09/23 21:49:35.34 pyQwxOFM.net
arrayのメリット:コピーができる
1016:デフォルトの名無しさん
16/09/23 21:59:45.45 x7wdola9.net
std::copy
1017:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています