[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 02/27 11:38 / Filesize : 256 KB / Number-of Response : 1020
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C++相談室 part154



1 名前:デフォルトの名無しさん mailto:sage [2021/01/08(金) 17:54:00.55 ID:0DW9z0rL.net]
※前スレ
C++相談室 part153
https://mevius.5ch.net/test/read.cgi/tech/1602339500/

テンプレここまで

611 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 16:31:48.90 ID:jcLu/xd9.net]
vectorを参照渡しするときの方法について教えてくください
class sansyo
{
private:
std::vector<short> _stdSansyo;
public:
void setSansyo(std::vector<short>& sansyo);
}
;void sansyo::setSansyo(std::vector<short>& sansyo)
{
_stdSansyo = sansyo;
_stdSansyo[5] = 500;
}
int main()
{
std::vector<short> moto;
sansyo cSansyo;
for (int i = 0; i < 10; i++) {
short tmp = i * 2;
moto.push_back(tmp);
}
cSansyo.setSansyo(moto);//ここで参照渡しのはず
for (int i = 0; i < 10; i++) {
std::cout << "値=" << moto[i] << "\n"; //値が変わっていない
}
}
こんなふうに、参照渡しにしてみたのですがどうも参照渡しになっていないでそのまま新しいvectorが作られちゃったぽいのですが
これだとメモリを倍使っちゃってるし、時間も掛かってますよね
どういうふうにしたら、喚ばれた側の関数で参照渡しに出来るのでしょう

612 名前:蟻人間 mailto:sage [2021/02/07(日) 16:37:08.22 ID:sfdJNFTq.net]
>>599
右辺値参照かstd::swap

613 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 17:13:26.18 ID:8CWTHaUD.net]
>>600
サンプル貼ってよ

614 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 17:21:04.63 ID:jcLu/xd9.net]
std::swapも右辺値参照も全然上手く行きそうになかっのたで

宣言をポインタにして
private:
std::vector<short> *_stdSansyo;

void sansyo::setSansyo(std::vector<short>& sansyo)
{
_stdSansyo = &sansyo;
sansyo[6] = 100;
_stdSansyo->data()[5] = 50;
}

関数をこんなふうに書き換えたら、ちゃんと参照だけで動いたのでもういいや

けど右辺値参照とstd::swapの例も出してくれたらこれから色々いたスカリマス

615 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 17:24:59.07 ID:8CWTHaUD.net]
>>600
ほれほれ
貼れんのか

616 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 17:28:56.01 ID:yi1XmM9H.net]
>>599
参照渡し自体はできてるはず。
ただ参照渡ししたvectorをクラスのメンバに代入して、代入されたクラスメンバの方を更新しているからvectorを渡した元の方にはまったく影響が無いというだけ。

617 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 17:29:10.92 ID:jX/y7Db/.net]
>>598
もうそう言うことにしないと自我が保てないんだろw

618 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 17:59:39.88 ID:p49/UnNX.net]
sansyo::_stdSanshoをどうしても参照にしたいならこうするしか、
class sansho {
private:
std::vector<short> _stdSansyo;
public:
sansho(std::vector<short>& src) : _stdSansyo(src) { }
void setSansyo(std::vector<short>& sansyo);
};
void sansyo::setSansyo(std::vector<short>& sansyo) {
_stdSansyo[5] = 500;
}
int main() {
std::vector<short> moto;
sansyo cSansyo(moto); //ここで参照渡し
for (int i = 0; i < 10; i++) {
short tmp = i * 2;
moto.push_back(tmp);
}
cSansyo.setSansyo(moto); // moto[5]に500が入りまくり
for (int i = 0; i < 10; i++) {
std::cout << "値=" << moto[i] << "\n"; //値が変わった!(予定
}
};

619 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 18:00:52.99 ID:HYoiJUgB.net]
>>598
だったら何だとぬかす気だ?
> 存在しないものを見てニヤニヤしてる変態こわい
> 文章を字面通りにしか解釈できない人?

要するに話になんない奴ってことだろ
言ったことにも裏の意味にもコメントされたくない
じゃあ相手しねえでやるから黙ってろゴミ



620 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 18:02:35.24 ID:p49/UnNX.net]
訂正orz
誤: private: std::vector<short> _stdSansyo;
正: private: std::vector<short>& _stdSansyo;

もしcSansyo.setSansyo(moto)の呼び出し時に参照を渡したいんじゃああ!
という向きにはsansyo::_stdSansyoはstd::vector<short>* _stdSanshoにして
ポインタを持つようにすべき

621 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 18:10:05.07 ID:p49/UnNX.net]
ちゅかもっと大きな一般原則としてつぎのどっちかにすべき
(1) std::vector<short>の実体の所有権をmain()(で定義いているmoto)に固定してcSanshoクラスにmotoのアドレスを記憶させない
(2) std::vector<short>の実体の所有権をcSanshoクラスのインスタンス(_stdSansyo;)に固定してmain()でmotoを定義するのをやめる
※ 個人の感想です

つまり出題が悪い。出し直し

622 名前:はちみつ餃子 mailto:sage [2021/02/07(日) 18:10:05.98 ID:hHDgzHUe.net]
>>602
元の考え方を変えずに動作させるにはその方法は十分に妥当だと思うよ。

ただ、もっと複雑なプログラムになったときにうっかりデータよりポインタのほうが
長生きすることになっても発見しづらいデザインになっている。

可能なら全体のデザインを見直すべきという話で、
いっそ所有権を渡してしまったほうが間違いにくいかもねという意味で右辺値参照や swap の話題が出ているので、
>>599 をベースにして右辺値参照や swap を使う例に書き換えるのは難しい。
別物になってしまう。

623 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 18:11:12.01 ID:yi1XmM9H.net]
>>607
自分以外の複数の人を同一人物だと思っちゃう人?

624 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 18:14:03.86 ID:p49/UnNX.net]
>>611
ネットの総意とか言い出しちゃう人?

625 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 18:16:20.19 ID:p49/UnNX.net]
検証不能な事物を錦の御旗にするような人間が
ソフトウェアのテスト推しなのは
大いなる矛盾である氏ね

626 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 18:18:25.00 ID:HYoiJUgB.net]
>>611
あの流れで
> 文章を字面通りにしか解釈できない人?
なんてぬかすやつは複数ID自演厨と見なされて当然だ
疑われたくなければ口の利き方に気をつけな

疑いは晴れてない
この後の発言にも気をつけるんだな

627 名前:デフォルトの名無しさん [2021/02/07(日) 18:24:44.17 ID:4v/nAOdw.net]
>>566
なにこれ

628 名前:デフォルトの名無しさん [2021/02/07(日) 18:29:05.24 ID:U/6f7Qk0.net]
参照をフィールドに保持するのは、一部のパーサーくらいでは?

しかも、状態を関数に切り分けないとデバッグが辛いので、仕方なくそうするだけで、バッド何とかの類だし。

629 名前:デフォルトの名無しさん [2021/02/07(日) 18:31:34.10 ID:U/6f7Qk0.net]
むかし5chで誰かが、プログラムを書くときは必ずテストしてるはずなんだって言ってましたが。
それを単体テストとして書いておけばずっと使えて便利だよと。

その書き込みを見て世界中の人がテストフレームワークを書き始めたんですよ。



630 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 19:06:50.71 ID:n+epGkV9.net]
>>616
想像力が足りなすぎ
>>617
想像力が豊かすぎ

631 名前:デフォルトの名無しさん [2021/02/07(日) 20:53:42.20 ID:U/6f7Qk0.net]
バッドエンディングですね。

632 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 21:03:56.50 ID:ZOvCZ0cx.net]
グローバル変数使うなとは言わないけどコメントもないのはキツい
grep掛けて検索しても訳分からん
ポインタで飛び火してるときなんてもう…

633 名前:デフォルトの名無しさん mailto:sage [2021/02/07(日) 22:09:55.11 ID:IiZq+u+t.net]
演算子オーバーロードの厄介さはキーワード検索で拾いにくいこと。
反復子もそうだが。ま、言い出したらきりないが。

634 名前:仮トリップ mailto:sage [2021/02/07(日) 22:57:26.65 ID:HI2f2oIL.net]
>>561を書いたのは私なんだけどなぁ...
面倒くさそうな人がいるし、一般論だけ言って立ち去ろって思っただけ

635 名前:仮トリップ mailto:sage [2021/02/07(日) 23:02:22.83 ID:HI2f2oIL.net]
ちなみに、>>561以降は何も述べてない。
私は一般論を語っただけだから、他の人が私と似た考えでツッコミを入れただけに過ぎない。

殺虫剤のパラドックス?それがどうした?
私はテストコードを書いて不具合を激的に抑えているが?

殺虫剤のパラドックスを説明したところで、不具合を限りなくゼロに近づける試みが無駄であることの証明にはならない。

636 名前:蟻人間 mailto:sage [2021/02/07(日) 23:09:32.25 ID:sfdJNFTq.net]
>>622-623
自我の芽生え、おめでとう!
では、かえるの歌を歌います。

【...JASRAC権利関係の為、自主検閲...】

♪パパーン
(全員でクラッカーを鳴らす)

637 名前:デフォルトの名無しさん [2021/02/07(日) 23:20:12.91 ID:IiZq+u+t.net]
殺虫剤のパラドックスなんてものは存在しない。
ただの退行テスト不足だ。

638 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 06:24:22.18 ID:PnrMZIJR.net]
殺虫剤のパラドックスって言いたかっただけやろw
そもそもテストで発覚したバグを修正したら同じテストで摘出できないのは当たり前
摘出できたら単なる修正漏れだしw
JSTQBの関係者か信奉者が言い出したんだろうけどあまり意味のない用語だと思う

639 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 06:42:41.05 ID:HwnOmmQF.net]
蒸し返さなくていいから……



640 名前:デフォルトの名無しさん [2021/02/08(月) 07:03:25.17 ID:nKLqWVxG.net]
虫返さないですと!?

641 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 11:05:43.31 ID:NGjwD54G.net]
>>610
そもそも>>600は的外れだと思うんだが
メンバの方を参照かポインタで持つ、で終わりだろ
3行目以降完全に蛇足

642 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 11:20:50.36 ID:VJ9lplXi.net]
>>627,628
そういうのは無視しろ

643 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 12:00:56.57 ID:zDqHH6LK.net]
スルーの法則

644 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 12:43:41.70 ID:DuebuhTc.net]
>>602
>>599
誰か
永続的に使用するなら shared_ptr

645 名前:で受け取れ。今のままだとsetSansyoを呼び出す側が所有権手放していいのかわからなくて困るだろ。
て指摘した?
今や生ポインタなんて性能優先のときに内部的に使用するもんで、インターフェイスで使用するもんじゃない。

あと、参照も関数内だけで使用する引数に使うもんで、永続的に所有する引数に使うもんじゃない。
[]
[ここ壊れてます]

646 名前:デフォルトの名無しさん [2021/02/08(月) 14:04:18.90 ID:VJ9lplXi.net]
コンストラクタでなら参照型のメンバ変数に保存できる。ほとんどの人はやらないけど。

647 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 18:54:29.18 ID:DuebuhTc.net]
>>633
できるのと実際に実装するのは別の話だわな。
所有権の無いオブジェクトの参照を保存するなんて狂気の沙汰だ。

648 名前:デフォルトの名無しさん [2021/02/08(月) 19:12:34.60 ID:nKLqWVxG.net]
アイキャンユーキャン。

649 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 20:51:28.21 ID:U8Md53kE.net]
>>633
クラス間に親子関係のようなものがあって、子の生存期間が常に親の生存期間内にあるような場合は、親への参照をメンバ変数とすることは普通にあると思うけど。例えば>>484とか



650 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 21:15:43.14 ID:NGjwD54G.net]
shared_ptr(またはスマポ)至上主義の変なやつ以前から居るんだよな
相手にするな

651 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 21:37:27.20 ID:UsSsiWeS.net]
ナマポ使ったほうが良い場面なんて皆無でしょう

652 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 21:48:31.75 ID:2GJiXyxS.net]
出たwナマポ完全否定奴w

653 名前:デフォルトの名無しさん [2021/02/08(月) 21:58:57.06 ID:VJ9lplXi.net]
参照型のメンバ変数は参照オブジェクトの生存期間を保証できないからweak_ptrで保存しておいて使う時だけshared_ptrを取得するのがC++的な解決なんじゃないの。

654 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 22:08:09.48 ID:FKp3giDs.net]
スマポにしたら所有権の問題を考えなくてよい
というわけではないからスマポ使えというのは妥当ではない
逆に所有権に矛盾が無ければインスタンスは生成元が与えた参照を持って良い

ていうかスコープを抜けたら自動的に解放される系のクラスを書いたら
エラー処理上エラー通知先としての生成元オブジェクトの参照保持はほとんど不可避

655 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 22:11:14.29 ID:NgGwlfwa.net]
コピー禁止のshared_ptr欲しい

656 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 22:25:23.27 ID:bp+4mh0R.net]
すべてスマポで書くスタイルも悪くないと思うけど、メイヤーズ神もツリー構造で子が親のポインタを持つときはナマポで十分と書いている

657 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 22:27:43.60 ID:34Jom8HU.net]
木のノードは子へのポインタじゃなくて子のノードIDを持て😡

658 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 22:48:15.38 ID:NgGwlfwa.net]
自分よりポインタの方が寿命が長いことが保証されているなら確かに生ポで問題ないが
それが成り立つ状況ってなかなかないよな。

659 名前:デフォルトの名無しさん [2021/02/08(月) 23:02:19.81 ID:VJ9lplXi.net]
参照先の実体がまだ生存しているかどうか知るにはweak_ptr::expired()を使うしかないのが現状でしょ。



660 名前:デフォルトの名無しさん [2021/02/08(月) 23:07:56.19 ID:nKLqWVxG.net]
Chromiumはstd::unique_ptrを全面的に使ってるけど、ポインタを使う設計そのものが古いような気がする。

661 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 23:13:28.50 ID:BwguerZK.net]
まあcコードを全く使わないってのならいいんでないの。
ただc++のポータビリティーは君が思ってるより低いけどね。

662 名前:デフォルトの名無しさん mailto:sage [2021/02/08(月) 23:23:15.47 ID:cR8ppl+C.net]
露骨すぎるマウント取りたがりダッセーwww

663 名前:デフォルトの名無しさん [2021/02/09(火) 01:58:29.04 ID:qUmf+U4D.net]
マウントじゃなくてポインタでは?

664 名前:デフォルトの名無しさん [2021/02/09(火) 02:46:23.52 ID:jPnyP+Vp.net]
C++に特化したAPIなんてどこのOSでも提供されないから、結局、Cの配列と互換性のあるstd::vectorやstd::arrayを使わざるを得なくなる。

665 名前:デフォルトの名無しさん [2021/02/09(火) 04:01:45.22 ID:qUmf+U4D.net]
>>644
木もコンテナで良いですよね。
所有権がハッキリしてて。

666 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 07:34:27.86 ID:nSJhwzEU.net]
>>651
data()を必ず使う手合いか?

667 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 07:39:10.06 ID:s3p3GZ7R.net]
木は木全体を収める領域ごと一気に解放する場合もあるから別に

668 名前:デフォルトの名無しさん [2021/02/09(火) 17:49:12.66 ID:KrtnTLUi.net]
>Cの配列と互換性のある

doubt

669 名前:デフォルトの名無しさん [2021/02/09(火) 17:53:30.91 ID:LEWRJrN2.net]
ダウトとデビューって似てるよね



670 名前:デフォルトの名無しさん [2021/02/09(火) 18:35:55.16 ID:qUmf+U4D.net]
親が子のポインタを所有する木は、親を消すとネストして子孫のデストラクタを呼ぶので、スタックが枯渇します。

したがって、子から順番に消さなくてはなりません。

671 名前:デフォルトの名無しさん [2021/02/09(火) 18:56:53.48 ID:qUmf+U4D.net]
その様はまるで摩天楼がドミノ倒しのように連鎖倒壊するようでもあり、DOMINOというピザにもなっています・

672 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 19:07:16.84 ID:IPYpL0sA.net]
なんと後味の悪い話

673 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 20:39:36.84 ID:zHOwdh/n.net]
意味が分からない

674 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 21:07:48.14 ID:Rh87rJZX.net]
>>657
それで枯渇するようじゃ木の探索すらできない。

675 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 21:13:02.23 ID:5Ac7csWH.net]
探索はループでもできるんで、たとえば数万個の要素を持つツリーを子から消せというのは真理なのかも

676 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 21:27:40.55 ID:AojZLEiV.net]
消すのは独立して実行できるので別スレッドに送れば実質コスト0

677 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 21:38:09.75 ID:s3p3GZ7R.net]
>>662
DFAとPDAではやれることの範囲の違いがちげう

つかこの場合は安易にスマポとかコンテナを使うから破棄ごときにトラバースの手間がかかるんである

678 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 21:44:42.72 ID:5Ac7csWH.net]
それもそうであるな

679 名前:デフォルトの名無しさん mailto:sage [2021/02/09(火) 21:50:17.60 ID:s3p3GZ7R.net]
ちゅか垂直探索なら木をメモリに持っておく必要が無い
水平探索ならメモリ上に世代1、世代2、....と木を育てていく(らしい)が
兄弟ノードを全部見終えたのでいざ従妹ノードに移ろうとするときに
親ノードへの参照は欲しい木がするがするとshared_ptrなら即循環参照になり、
子の情報で親(子孫がいっぱいぶら下がっている)を生成できるわけもないから、
ウィークポインタの出番でもない



680 名前:デフォルトの名無しさん [2021/02/10(水) 01:37:49.58 ID:XIZePh+h.net]
子から消さなかったばかりに。
2000人を乗せた航空機が洋上で消えた。
ってなるかも?

681 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 01:48:13.89 ID:ZYaksnCf.net]
A380でさえ853席だが2000人なんてどうやって載せるんだろう

682 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 01:51:41.17 ID:2ozOIzIF.net]
く、空中で衝突するとか…

683 名前:デフォルトの名無しさん [2021/02/10(水) 01:53:08.99 ID:XIZePh+h.net]
インドでは屋根の上にも乗ります。

684 名前:デフォルトの名無しさん [2021/02/10(水) 01:55:11.55 ID:XIZePh+h.net]
https://trafficnews.jp/post/80031

証拠写真みつけてきた。

685 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 01:55:17.84 ID:uF0JvJPV.net]
GTA5のMOD作成者みたいな会話だな

686 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 02:01:19.54 ID:uF0JvJPV.net]
>>653
昔はdata()がなかった。(遠い目)

687 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 06:40:17.61 ID:ZYaksnCf.net]
アントノフの貨物室にすし詰めでどんくらい乗れるかな

688 名前:デフォルトの名無しさん [2021/02/10(水) 06:40:27.16 ID:XIZePh+h.net]
東京: TK
京都: KT
大阪: OSK
淡路: AWG

689 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 07:59:22.76 ID:FGGGEnfF.net]
航空機や原発みたいなクリティカルなシステムでは
全部固定長の配列で書いてあるんじゃないの



690 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 08:06:21.27 ID:uF0JvJPV.net]
釣れますか。
ヒープのほうが少し安全です。

691 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 10:25:11.13 ID:4XPmMtZj.net]
>>671
どこが証拠やねん!
せいぜり100人やないかヽ(`Д´)ノ

692 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 14:32:04.65 ID:TFzLuCg0.net]
すみません、std::for_each を使っていて continue したくなりましたが、サポートしてないです
よね? これって:
1. for_each は continue する必要がないような処理に限ってに使うべき。
2. ループの中で大きい if ブロックを作って空の処理にすればよい。
3. その他

693 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 15:13:45.18 ID:ZYaksnCf.net]
returnすれば?
for_each(begin(foo), end(foo), []{ if(bar) return; });

694 名前:デフォルトの名無しさん [2021/02/10(水) 16:06:00.49 ID:HSfvjOUE.net]
return は continue ではなく break じゃないの?
質問者の2.大きなif分で実質何もしないでいいと思う

695 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 16:20:11.24 ID:ZYaksnCf.net]
for_eachをbreakするにはthrowかlongjmpがいるぞ

696 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 16:35:39.62 ID:S47HOUGT.net]
きったねぇジャンプだ

697 名前:デフォルトの名無しさん [2021/02/10(水) 16:51:31.94 ID:HSfvjOUE.net]
あ、ラムダ式になってたのか

698 名前:はちみつ餃子 mailto:sage [2021/02/10(水) 17:51:08.81 ID:tNqysU9n.net]
>>679
for 文で書いた方が短く書けそうだけど、
あえて for_each を使いたい理由が何かあったりするの?

699 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 18:41:41.17 ID:FGGGEnfF.net]
Perlなら問題無くできる(continue→next、だが
C++規格委員会がfor_eachのcontinueを許可しないのは最後の一線なのかもしれん…



700 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 19:51:57.06 ID:teDb7k99.net]
何の一線よ

701 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 20:18:41.39 ID:ln/pLvjf.net]
いやreturnでいいだろ…
許可しないってなんのことだよ

702 名前:デフォルトの名無しさん [2021/02/10(水) 21:21:18.68 ID:+e+FbMSY.net]
vectorで一億件ほどで、飛ばしたいのが100〜1000件程度なんだろう

703 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 21:51:25.56 ID:QYfnOwKH.net]
>>679
for_eachをrange based forに変更は出来ないの?

704 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 21:59:01.21 ID:ZYaksnCf.net]
>>690
おまえのスキルのためにか?

705 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 22:17:23.69 ID:qtVJ0qYe.net]
range based forなら普通にcontinueできるぞ

706 名前:デフォルトの名無しさん mailto:sage [2021/02/10(水) 22:18:26.21 ID:ln/pLvjf.net]
>>689
飛ばす手段があったとして、飛ばすかどうかどこでどう判断するの?

707 名前:デフォルトの名無しさん mailto:sage [2021/02/11(木) 04:16:42.30 ID:nrDdTgaQ.net]
early returnは正義

708 名前:デフォルトの名無しさん [2021/02/11(木) 11:22:44.35 ID:n0GRjtoR.net]
>>685
テンプレのときとか

709 名前:デフォルトの名無しさん mailto:sage [2021/02/11(木) 17:53:02.68 ID:Iq2aKjep.net]
679がなぜfor_eachを使うのかを無視するのは
他人の領分を侵すお節介だ

for_eachの使い方をアドバイスできんやつは
しゃしゃり出てくるな



710 名前:デフォルトの名無しさん mailto:sage [2021/02/11(木) 18:00:13.22 ID:hRfccug1.net]
よくよく話を聞いてみたらまるで異なる解決策が見つかるなんてよくあることじゃん。そんな経験ないの?
何をしたかったか確認するのは重要

711 名前:デフォルトの名無しさん mailto:sage [2021/02/11(木) 18:15:41.21 ID:Iq2aKjep.net]
流れをよく読んでみろよ
for_eachをロクに使ってないやつなのモロバレだろ
質問者が尋ねていないことを答えたいから協力しろなんてぬかすのは
回答者の資格ねえんだよ






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<256KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef