[過去ログ]
C++相談室 part164 (1002レス)
C++相談室 part164 http://mevius.5ch.net/test/read.cgi/tech/1683600652/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
1: デフォルトの名無しさん (ワッチョイ 33da-QP0H) [sage] 2023/05/09(火) 11:50:52.06 ID:EYc2I7oW0 !extend:checked:vvvvv:1000:512 !extend:checked:vvvvv:1000:512 ↑同じ内容を3行貼り付けること 次スレは>>980が立てること 無理なら細かく安価指定 ※前スレ C++相談室 part163 https://mevius.5ch.net/test/read.cgi/tech/1672409791/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured http://mevius.5ch.net/test/read.cgi/tech/1683600652/1
876: デフォルトの名無しさん (ワッチョイ 1379-3b5p) [sage] 2023/10/14(土) 12:06:47.14 ID:91QwaM6H0 俺じゃないならなんでこの流れでわざわざ出版があーだこーだ言い出したの? そういった行為は横紙破りって言うんだよ口語ではあんま使わない言葉だけど 社会でうまくやっていけてなさそう http://mevius.5ch.net/test/read.cgi/tech/1683600652/876
877: デフォルトの名無しさん (ワッチョイ d17c-YxuP) [sage] 2023/10/14(土) 12:10:00.69 ID:JB0xgUuV0 また紙の話してる http://mevius.5ch.net/test/read.cgi/tech/1683600652/877
878: デフォルトの名無しさん (アウアウウー Sadd-f0fU) [] 2023/10/14(土) 12:14:09.72 ID:x03gZ5vca 自分で剃ってるのかと思ったが 本人が反論したことで 本人の望まない形で禿ていることがバレるという悪循環 http://mevius.5ch.net/test/read.cgi/tech/1683600652/878
879: デフォルトの名無しさん (ワッチョイ 5901-Vk26) [sage] 2023/10/14(土) 12:42:26.40 ID:up3P3K8x0 >>876 彼は出版しているので 名前を出されても構わない立場の人間であるということ モブとは違うんだよ http://mevius.5ch.net/test/read.cgi/tech/1683600652/879
880: デフォルトの名無しさん (ワッチョイ 53cb-k/Ti) [sage] 2023/10/14(土) 13:20:35.60 ID:ULvJZdiM0 Twitterにいつもいるから直接聞けよコミュ障 http://mevius.5ch.net/test/read.cgi/tech/1683600652/880
881: デフォルトの名無しさん (ワッチョイ c105-v2ln) [sage] 2023/10/14(土) 18:20:44.57 ID:ma8uiWBB0 >>880 正論 >>879 書いてないと主張するお前が、名前が書かれた文章前半の一部のみ勝手に正当主張をしてるのはわかってるんだけど、後半の文章についてはどう考えてるの? http://mevius.5ch.net/test/read.cgi/tech/1683600652/881
882: デフォルトの名無しさん (ワッチョイ 5901-Vk26) [] 2023/10/14(土) 19:26:26.32 ID:up3P3K8x0 >>881 >書いてないと主張するお前が、名前が書かれた文章前半の >一部のみ勝手に正当主張をしてるのはわかってるんだけど、 >後半の文章についてはどう考えてるの? どれか分からんからきちんと書け http://mevius.5ch.net/test/read.cgi/tech/1683600652/882
883: デフォルトの名無しさん (ワッチョイ c105-v2ln) [sage] 2023/10/14(土) 21:50:40.28 ID:ma8uiWBB0 横から入ってきた割に、話が通じないやつって初めて見た http://mevius.5ch.net/test/read.cgi/tech/1683600652/883
884: デフォルトの名無しさん (ワッチョイ 5901-Vk26) [sage] 2023/10/14(土) 21:57:24.93 ID:up3P3K8x0 >>883 プログラム書いてるだろうに文章が下手過ぎるから話が通じない 俺は侮辱するようなことは一言も書いていない 別人が書いたのを読み違えてるんだよ http://mevius.5ch.net/test/read.cgi/tech/1683600652/884
885: デフォルトの名無しさん (ワッチョイ b990-lUy8) [sage] 2023/10/15(日) 06:50:14.19 ID:DwcyuqQy0 基地外のスレチ荒らしはスルーしようぜ http://mevius.5ch.net/test/read.cgi/tech/1683600652/885
886: デフォルトの名無しさん (ワッチョイ c105-v2ln) [sage] 2023/10/15(日) 07:30:07.34 ID:T2NVqJIH0 >>864は覚えておくわ http://mevius.5ch.net/test/read.cgi/tech/1683600652/886
887: デフォルトの名無しさん (ワッチョイ 5901-Vk26) [] 2023/10/15(日) 11:44:46.43 ID:S1qRngxA0 >>>886 ちゃんと覚えとけよ それは俺じゃないからね http://mevius.5ch.net/test/read.cgi/tech/1683600652/887
888: デフォルトの名無しさん (ワッチョイ 13f0-jdKV) [sage] 2023/10/15(日) 17:41:10.31 ID:9kWoH1jw0 ハゲはナニやってもハゲるらしいからな 理由なんて無いだろう http://mevius.5ch.net/test/read.cgi/tech/1683600652/888
889: デフォルトの名無しさん (ワッチョイ 13f0-jdKV) [sage] 2023/10/15(日) 17:43:05.48 ID:9kWoH1jw0 ハゲるヤツはナニやってもハゲるらしいからな そもそも理由なんて無いのだろう http://mevius.5ch.net/test/read.cgi/tech/1683600652/889
890: デフォルトの名無しさん (ワッチョイ 1302-os2T) [sage] 2023/10/15(日) 21:12:08.28 ID:ehVuw9SG0 いつまでもお傍にいます、最後まで… http://mevius.5ch.net/test/read.cgi/tech/1683600652/890
891: デフォルトの名無しさん (ワッチョイ 01f5-uehJ) [sage] 2023/10/16(月) 08:48:43.37 ID:yu+2eKsI0 Stroustrupのことはハゲハゲ言うくせに江添に対しては厳しいんだなw http://mevius.5ch.net/test/read.cgi/tech/1683600652/891
892: デフォルトの名無しさん (スッップ Sd33-boBM) [sage] 2023/10/17(火) 17:04:23.91 ID:zRs2E77Cd 言う程ハゲてない まだ大丈夫 http://mevius.5ch.net/test/read.cgi/tech/1683600652/892
893: デフォルトの名無しさん (スッップ Sd33-boBM) [sage] 2023/10/17(火) 17:04:42.90 ID:zRs2E77Cd 言う程ハゲてない まだ大丈夫 http://mevius.5ch.net/test/read.cgi/tech/1683600652/893
894: デフォルトの名無しさん (アウアウウー Sadd-wvjH) [sage] 2023/10/17(火) 17:55:21.31 ID:it1TRy+pa ひさしぶりにこのスレにきてわかったことがひとつある C++はハゲと相性が良い http://mevius.5ch.net/test/read.cgi/tech/1683600652/894
895: デフォルトの名無しさん (ワッチョイ 1379-3b5p) [sage] 2023/10/17(火) 19:10:02.16 ID:LcuTSSJS0 C++使うとハゲるって当初噂になったぐらいだが 知らんのか http://mevius.5ch.net/test/read.cgi/tech/1683600652/895
896: デフォルトの名無しさん (ワッチョイ 59da-jdKV) [sage] 2023/10/17(火) 20:35:53.51 ID:B/3DhPmO0 空いたプランクを埋めるためにC++言語仕様を高速に無理矢理理解しようとすると却ってストレスがたまってハゲることになる恐ろしい言語 http://mevius.5ch.net/test/read.cgi/tech/1683600652/896
897: デフォルトの名無しさん (ワッチョイ 39f8-jJly) [sage] 2023/10/17(火) 21:21:23.39 ID:WuBQOYXz0 >>895 MJD? Miwa C++ のエピスメーテーさんもHAGEなの? http://mevius.5ch.net/test/read.cgi/tech/1683600652/897
898: デフォルトの名無しさん (ワッチョイ 01a7-QDHO) [sage] 2023/10/18(水) 21:04:49.19 ID:UzfqKL8d0 禿げるというより若白髪は明らかに増えたわ http://mevius.5ch.net/test/read.cgi/tech/1683600652/898
899: デフォルトの名無しさん (ワッチョイ c914-cthS) [sage] 2023/10/18(水) 21:21:08.16 ID:ELvl69q70 いや、お前はもう若くはない http://mevius.5ch.net/test/read.cgi/tech/1683600652/899
900: デフォルトの名無しさん (ワッチョイ c914-cthS) [sage] 2023/10/18(水) 21:22:58.52 ID:ELvl69q70 いや、お前はもう若くはない http://mevius.5ch.net/test/read.cgi/tech/1683600652/900
901: デフォルトの名無しさん (ワッチョイ c914-cthS) [sage] 2023/10/18(水) 21:25:02.33 ID:ELvl69q70 もう若くはないのだ http://mevius.5ch.net/test/read.cgi/tech/1683600652/901
902: デフォルトの名無しさん (ワッチョイ c901-Vk26) [sage] 2023/10/18(水) 21:59:07.00 ID:eoT4PoLM0 時期を逸するというのはなんとも悲しいものだ 取り返しはつかない http://mevius.5ch.net/test/read.cgi/tech/1683600652/902
903: デフォルトの名無しさん (ワッチョイ 1379-3b5p) [sage] 2023/10/18(水) 22:40:09.97 ID:tODhST9E0 C++とMFCのコンボで世の中の何本の毛根が失われたのだろう http://mevius.5ch.net/test/read.cgi/tech/1683600652/903
904: デフォルトの名無しさん (ワッチョイ c901-Vk26) [sage] 2023/10/18(水) 22:52:13.26 ID:eoT4PoLM0 取り返しはつかない http://mevius.5ch.net/test/read.cgi/tech/1683600652/904
905: デフォルトの名無しさん (ワッチョイ 3963-1J/V) [sage] 2023/10/19(木) 22:15:33.96 ID:PH9oNQB60 質問なのですがサイズnのstd::vector<T> vecに対してi番目(i=0, 1, 2, ..., n)の要素の直前に要素elemを1個挿入する(ただしi=nは末尾に追加と解釈する の書き方はどうすればいいですの? とりま2種類考えた、 1) size_t sz = vec.size(); auto ins_it = (i < sz) ? std::next(vec.begin(), i) : vec.end(); vec.insert(ins_it, elem); 2) size_t sz = vec.size(); if (i < sz) { vec.insert(std::next(vec.begin(), i), elem); } else { vec.resize(i + 1, elem); } http://mevius.5ch.net/test/read.cgi/tech/1683600652/905
906: デフォルトの名無しさん (ワッチョイ 797f-/4nw) [] 2023/10/19(木) 23:37:01.14 ID:49m1KrYl0 vec.insert(vec.begin() + i, elem); http://mevius.5ch.net/test/read.cgi/tech/1683600652/906
907: デフォルトの名無しさん (ワッチョイ fbda-jdKV) [sage] 2023/10/20(金) 09:00:04.92 ID:Z7DUQLh+0 simple is best よ 何事も http://mevius.5ch.net/test/read.cgi/tech/1683600652/907
908: デフォルトの名無しさん (スフッ Sd33-Kt/B) [] 2023/10/20(金) 09:44:04.99 ID:JTOR6W7Wd だから I hate C++ の Matz はまだフサフサなのか http://mevius.5ch.net/test/read.cgi/tech/1683600652/908
909: デフォルトの名無しさん (ワッチョイ b990-lUy8) [sage] 2023/10/20(金) 15:53:09.23 ID:IDnubi5y0 コードの内容なんか忘れた半年後に 再びコード見てその瞬間、分かるように書くのが一番 その為のSimple is bestに同意 http://mevius.5ch.net/test/read.cgi/tech/1683600652/909
910: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 7b3e-RnKc) [sage] 2023/10/20(金) 16:04:48.20 ID:+Ixb2Hv20 読み取りやすいように書くのは大事だけど、少し汚くても わかりやすい名前を付けておけば割となんとかなる。 http://mevius.5ch.net/test/read.cgi/tech/1683600652/910
911: デフォルトの名無しさん (ワッチョイ 0134-l/11) [sage] 2023/10/20(金) 20:55:51.96 ID:jh4JxiwB0 おっと、名前付けの話?オッチャン持論語っちゃう 関数に長い名前つけるのはありと思うが、変数名は宣言箇所にコメント書いて2文字とか短い変数名が好き ワシは元々BASICから始まってSmalltalkを学んだクチだけど、一時期のjavaみたいななんでも長い名前にするやつ大っきらい。Cの母音ラクダ方式大好き http://mevius.5ch.net/test/read.cgi/tech/1683600652/911
912: デフォルトの名無しさん (ワッチョイ dd14-PKJr) [sage] 2023/10/21(土) 00:04:43.68 ID:JSr5Bd510 お前の好き嫌いでは議論にならん 優劣を語れよ、ジジイ http://mevius.5ch.net/test/read.cgi/tech/1683600652/912
913: デフォルトの名無しさん (ワッチョイ 1934-egvn) [sage] 2023/10/21(土) 01:04:06.34 ID:m23W7dra0 >>912 が優劣について数字を出して語ってくれるそうです どうぞw http://mevius.5ch.net/test/read.cgi/tech/1683600652/913
914: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 8da2-+JM7) [sage] 2023/10/21(土) 02:43:39.26 ID:WDz67hDs0 C++ はある程度は汚いものだろう。 隅々まで綺麗にしようと腐心するよりは 少なくとも部品のインターフェイスくらいはまともにして 外側に対しては綺麗なふりをするくらいが手頃な妥協点だと思う。 逆にミクロ的にスマートに書けていても 抽象化が駄目だと使いにくいよ。 内も外も綺麗ならそれに越したことはないけど そうもいかないのが現実だからね。 http://mevius.5ch.net/test/read.cgi/tech/1683600652/914
915: デフォルトの名無しさん (ワッチョイ d563-KkNu) [sage] 2023/10/21(土) 08:17:46.79 ID:pQG7G9ym0 >>906 天才か! なんかこの前動かしたら駄目だった気がしたけど 今やったら動いたわサーセン;;; http://mevius.5ch.net/test/read.cgi/tech/1683600652/915
916: デフォルトの名無しさん (オイコラミネオ MMbd-JD/u) [sage] 2023/10/21(土) 12:13:35.82 ID:3FTa9ZLeM vectorなのかvecなのかは言語開発者がそうと決めたからそうなってるだけ 昔はコード補間もなくx-windowのアホみたいな長い呪文APIぶち込んでたけど今もそれだったらぶち切れてる 意外なことに開発環境が変わればいろいろ変わる http://mevius.5ch.net/test/read.cgi/tech/1683600652/916
917: デフォルトの名無しさん (オイコラミネオ MMbd-JD/u) [sage] 2023/10/21(土) 12:24:11.96 ID:3FTa9ZLeM 今windowの更にクソ長い基地外じみたAPI打ってるのもコード補完があるから http://mevius.5ch.net/test/read.cgi/tech/1683600652/917
918: デフォルトの名無しさん (アウアウウー Sa09-mHTC) [sage] 2023/10/21(土) 13:25:34.47 ID:oEOsfkqwa 名前の長い短かいについては上述のとおり技術の進歩、開発環境の変化で落しどころがかわってくるが 俺的にはむしろネーミングのセンスのほうが気になる 俺がまだフサフサだったころはイキって一般によく使われる単語とちょっと違う単語をわざわざ探すようなことをしていたが 頭髪が薄くなるに従ってそういうことはくだらない事と思うようになり 今はできるだけベタな誰が見ても即座に意味がつかめる、あえてダッサいネーミングをするよう心がけてる 例:データを吸いあげて収納するメソッド名 フサフサ俺がつけがちな名前 → .BeamMeUp() ハゲ俺がつける名前 → .LoadData() http://mevius.5ch.net/test/read.cgi/tech/1683600652/918
919: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 8e3e-exru) [sage] 2023/10/21(土) 13:28:07.89 ID:lPxmC+mr0 >>915 std::vector のイテレータの場合に限らず ランダムアクセスイテレータは difference_type との加算が出来ることになってる。 https://timsong-cpp.github.io/cppwp/n3337/iterator.requirements#tab:iterator.random.access.requirements http://mevius.5ch.net/test/read.cgi/tech/1683600652/919
920: デフォルトの名無しさん (ワッチョイ 19f2-awtI) [sage] 2023/10/21(土) 13:55:07.32 ID:QfWCszfk0 >>918 仕事でやってたら初日で怒られるレベル http://mevius.5ch.net/test/read.cgi/tech/1683600652/920
921: デフォルトの名無しさん (ワッチョイ 7a79-Idv/) [sage] 2023/10/21(土) 14:25:15.02 ID:ifbOBJO10 >データを吸いあげて収納する ハゲなのに5W1Hすら知らないと見える http://mevius.5ch.net/test/read.cgi/tech/1683600652/921
922: デフォルトの名無しさん (ワッチョイ 8eca-ANn9) [] 2023/10/21(土) 19:03:13.06 ID:l7vz3TvG0 恥ずかしながら学生の頃はドイツ語で命名してましてねフフフ http://mevius.5ch.net/test/read.cgi/tech/1683600652/922
923: デフォルトの名無しさん (ワッチョイ 0105-SFbe) [sage] 2023/10/21(土) 19:20:36.30 ID:5c+gSFSX0 korewahennsuudesu http://mevius.5ch.net/test/read.cgi/tech/1683600652/923
924: デフォルトの名無しさん (ワッチョイ d563-KkNu) [sage] 2023/10/21(土) 20:59:24.58 ID:pQG7G9ym0 >>919 レス引用が分かりにくくてスマンカッタorz そこではなくて挿入位置にsize()まで指定してたら末尾に要素が追加にできるところ std::vector<int> vec = { 1, 2, 3 }; vec.insesrt(vec.begin() + vec.size(), 4); cout << vec << endl; // ( 1 2 3 4 ) http://mevius.5ch.net/test/read.cgi/tech/1683600652/924
925: デフォルトの名無しさん (ワッチョイ 6501-6i8i) [] 2023/10/21(土) 21:41:14.77 ID:BercqiEL0 ラズパイレートでいうと 民主党政権の頃は1ドル80円だったけど いまは1ドル200円 http://mevius.5ch.net/test/read.cgi/tech/1683600652/925
926: デフォルトの名無しさん (ワッチョイ 6501-6i8i) [] 2023/10/21(土) 21:41:30.90 ID:BercqiEL0 ラズパイレートでいうと 民主党政権の頃は1ドル80円だったけど いまは1ドル200円 http://mevius.5ch.net/test/read.cgi/tech/1683600652/926
927: デフォルトの名無しさん (ワッチョイ 6501-6i8i) [] 2023/10/21(土) 22:50:32.79 ID:BercqiEL0 >>921 5W1HはMITが提唱したんじゃなかったっけ http://mevius.5ch.net/test/read.cgi/tech/1683600652/927
928: デフォルトの名無しさん (ワッチョイ 1590-wvhw) [sage] 2023/10/22(日) 12:33:14.88 ID:x1FYC/BU0 変数でも関数でも 初見もしくは内容忘れた自分が 読んだとき何をやってるか分かるような名前付けが大事だと思う よって長さは常識の範囲内なら長い方が良いかな どうでもいいループ変数にindex2SearchArgumentHaystackとか 書いてたら殺意を覚えるけどさ http://mevius.5ch.net/test/read.cgi/tech/1683600652/928
929: デフォルトの名無しさん (オイコラミネオ MMbd-JD/u) [sage] 2023/10/22(日) 17:33:51.66 ID:Ih9eQULqM GetSelectedPersonDataFromLiveDBIfNotExistsReadDefaultValueFromSettingFileType2022Ex http://mevius.5ch.net/test/read.cgi/tech/1683600652/929
930: デフォルトの名無しさん (ワッチョイ 0105-SFbe) [sage] 2023/10/22(日) 17:36:33.94 ID:+fVR99EM0 = 1 ; http://mevius.5ch.net/test/read.cgi/tech/1683600652/930
931: デフォルトの名無しさん (ワッチョイ 6501-6i8i) [] 2023/10/22(日) 19:20:31.79 ID:/8xzlJDV0 モジュールはまだ使えんのか? http://mevius.5ch.net/test/read.cgi/tech/1683600652/931
932: デフォルトの名無しさん (ワッチョイ 8e3b-xUKY) [] 2023/10/22(日) 20:40:59.32 ID:XK8cC57k0 リテラルで簡潔に書けるのでみんな初期化子リストばんばん使ってると思うけど initializer_listって必ずコピーが発生するのな non copyableなクラスが使えなくて不便なんだが、回避策ない? http://mevius.5ch.net/test/read.cgi/tech/1683600652/932
933: デフォルトの名無しさん (ワッチョイ 5d01-46Vy) [sage] 2023/10/22(日) 20:47:43.40 ID:tZaS4o4u0 >>932 >non copyableなクラスが使えなくて不便なんだが、回避策ない? moveすれば? http://mevius.5ch.net/test/read.cgi/tech/1683600652/933
934: デフォルトの名無しさん (ワッチョイ 8e01-tEca) [sage] 2023/10/22(日) 23:26:18.52 ID:XK8cC57k0 >>933 できないんだよ http://mevius.5ch.net/test/read.cgi/tech/1683600652/934
935: デフォルトの名無しさん (ワッチョイ 5d01-46Vy) [sage] 2023/10/22(日) 23:33:55.26 ID:tZaS4o4u0 >>934 ??? どんなコードで問題出てるの? http://mevius.5ch.net/test/read.cgi/tech/1683600652/935
936: デフォルトの名無しさん (ワッチョイ 8e3b-xUKY) [] 2023/10/23(月) 01:32:53.76 ID:sueaiNV30 >>935 https://wandbox.org/permlink/n0KXbXrmLzHDl6KU 次のコードがコンパイルできない struct A { A(int) {} A(const A&) = delete; }; int main() { std::vector<A> v = { 1, 2, 3 }; } http://mevius.5ch.net/test/read.cgi/tech/1683600652/936
937: デフォルトの名無しさん (ワッチョイ 1998-awtI) [sage] 2023/10/23(月) 05:17:34.59 ID:RG/DfB7W0 >933, >>935 https://www.google.com/search?q=initializer_list+move クソ回答する前にググれよ http://mevius.5ch.net/test/read.cgi/tech/1683600652/937
938: デフォルトの名無しさん (ワッチョイ 5d01-46Vy) [sage] 2023/10/23(月) 09:29:50.40 ID:9KLj8HWs0 >>936,937 あれ? $ cat test.cpp #include <iostream> using namespace std; struct A { A () {cout << "construct" << endl;} A (const A &p) = delete; A (A &&p) {cout << "move" << endl;} }; void func (initializer_list <A> p) { cout << "func" << endl; } int main () { A a0; A a1; func ({move (a0), move (a1)}); return 0; } $ g++ test.cpp $ ./a.out construct construct move move func http://mevius.5ch.net/test/read.cgi/tech/1683600652/938
939: デフォルトの名無しさん (ワッチョイ 5d01-46Vy) [sage] 2023/10/23(月) 10:27:22.01 ID:9KLj8HWs0 だめかなぁ... #include <vector> struct A { A(int) {} A(const A&) = delete; A(A&&) = default; }; std::vector <A> construct (std::initializer_list <A> p) { std::vector <A> result; for (auto itr {p.begin ()}, end {p.end ()}; itr != end; ++ itr) result.push_back (std::move (const_cast <A &> (*itr))); return result; } int main() { std::vector<A> v = construct ({ 1, 2, 3 }); } http://mevius.5ch.net/test/read.cgi/tech/1683600652/939
940: デフォルトの名無しさん (ワッチョイ 4eda-CTkJ) [sage] 2023/10/23(月) 11:36:11.62 ID:OKLUF2xV0 >>936 コピコン消したいなら代入オペレータ用意してやらんとダメだろ http://mevius.5ch.net/test/read.cgi/tech/1683600652/940
941: デフォルトの名無しさん (ワッチョイ 1a20-ANn9) [sage] 2023/10/23(月) 13:23:41.68 ID:1EMVV/4H0 initializer_list<A&&>が作れないから波括弧初期化できないって話か なるほどね http://mevius.5ch.net/test/read.cgi/tech/1683600652/941
942: デフォルトの名無しさん (ワッチョイ 19f4-awtI) [sage] 2023/10/23(月) 19:21:53.26 ID:RG/DfB7W0 initializer_list作るとこまでは出来てもムーブで取り出せないのよ だからvectorのコンストラクタにinitializer_listで渡すとエラー出るし、>>939のように const外して一つずつ突っ込むとかしなきゃいけなくなる ムーブ可能にする提案は出てるらしいけど https://cpplover.blogspot.com/2014/11/2014-10-pre-urbana-mailings-n4160-n4169.html?m=1 http://mevius.5ch.net/test/read.cgi/tech/1683600652/942
943: デフォルトの名無しさん (ワッチョイ 1909-awtI) [sage] 2023/10/24(火) 05:35:10.47 ID:RZM2X1OT0 https://wandbox.org/permlink/h9ZXqkhA56d7EOYP std::vectorだからどうしようもないけど、自作クラスならinitializer_listよりも可変長テンプレートをオススメしたい これならコピー不可(ムーブのみ)なクラスでも集成体初期化出来る (ただしコンセプトかenable_ifでAまたはAに暗黙変換可能な型に限定すべき、enable_ifでもメタプログラミングで条件式作れる) http://mevius.5ch.net/test/read.cgi/tech/1683600652/943
944: デフォルトの名無しさん (ワッチョイ 1909-awtI) [sage] 2023/10/24(火) 05:38:03.34 ID:RZM2X1OT0 あ、すまんコメントのとこだけどis_convertible_vの引数は逆だった http://mevius.5ch.net/test/read.cgi/tech/1683600652/944
945: デフォルトの名無しさん (ワッチョイ 1909-awtI) [sage] 2023/10/24(火) 05:42:10.71 ID:RZM2X1OT0 もう一つ訂正すまん、集成体初期化じゃないな一様初期化かリスト初期化かorz http://mevius.5ch.net/test/read.cgi/tech/1683600652/945
946: デフォルトの名無しさん (スッップ Sd9a-SL8W) [sage] 2023/10/24(火) 08:43:43.05 ID:NeqpGeoJd 教訓 std::vectorは使い物にならない http://mevius.5ch.net/test/read.cgi/tech/1683600652/946
947: デフォルトの名無しさん (ワッチョイ 5d01-46Vy) [] 2023/10/24(火) 11:05:08.48 ID:B30+3CR30 >>946 何で? http://mevius.5ch.net/test/read.cgi/tech/1683600652/947
948: デフォルトの名無しさん (ワッチョイ 999f-dytz) [sage] 2023/10/24(火) 11:09:20.45 ID:AiEp9cgJ0 もうC++の仕様拡張はもう限界なんだよ あっちを立てればこっちが立たずが毎回問題になる http://mevius.5ch.net/test/read.cgi/tech/1683600652/948
949: デフォルトの名無しさん (ワッチョイ 5558-8kgw) [] 2023/10/24(火) 11:19:38.47 ID:1IilAibW0 std2 作ってゼロからやり直さないと C++はどうにもならんね http://mevius.5ch.net/test/read.cgi/tech/1683600652/949
950: デフォルトの名無しさん (ワッチョイ 4eda-CTkJ) [sage] 2023/10/24(火) 11:40:18.75 ID:nK1YbT6/0 iostreamの二の足を踏みそうだ http://mevius.5ch.net/test/read.cgi/tech/1683600652/950
951: デフォルトの名無しさん (ワッチョイ 5d01-46Vy) [sage] 2023/10/24(火) 12:18:26.26 ID:B30+3CR30 >>946,948-950 具体的に議論しようぜ http://mevius.5ch.net/test/read.cgi/tech/1683600652/951
952: デフォルトの名無しさん (ワイーワ2 FF62-6i8i) [sage] 2023/10/24(火) 12:59:19.46 ID:2UheMrybF >>946 deque の方が常に良いことが多いと思う initializer_list でうまくいかんときは make_tuple か tie でごまかしたことがある気がするけど あれも move じゃなくて copy だったかな 最近は Rust の方がその辺は楽な気がするな http://mevius.5ch.net/test/read.cgi/tech/1683600652/952
953: デフォルトの名無しさん (ワッチョイ 5d01-46Vy) [sage] 2023/10/24(火) 13:10:28.54 ID:B30+3CR30 >>952 initializer_listでmoveできない問題なら>>939で良いのでは? template化して関数名短くすれば使い心地は{}と そう変わらんと思うが? http://mevius.5ch.net/test/read.cgi/tech/1683600652/953
954: デフォルトの名無しさん (ワッチョイ 8eca-ANn9) [] 2023/10/24(火) 22:26:14.45 ID:0fDOryx60 文字コード周りだけは決着つけてくれ! http://mevius.5ch.net/test/read.cgi/tech/1683600652/954
955: デフォルトの名無しさん (ワッチョイ ba48-g88S) [sage] 2023/10/26(木) 08:51:51.55 ID:+j1jszqL0 chatGPTが今ダウンしているので質問します 以下のC++コードでfirst->secondとなっている部分がよくわかりません vector<pair<int, int>> A(N); for(auto& [x, y] : A) cin >> x >> y; unordered_map<int, int> X, Y; for(auto& [x, y] : A){ x = X.try_emplace(x, X.size()).first->second; y = Y.try_emplace(y, Y.size()).first->second; } try_emplaceはPair<iterator,bool>を返すオーバーロードがあるので firstまではわかるもののそこからさらにsecondとすると何がおきるのでしょうか http://mevius.5ch.net/test/read.cgi/tech/1683600652/955
956: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 8e3e-exru) [sage] 2023/10/26(木) 09:25:01.17 ID:oN20rU1J0 >>955 格納しているのがペアなんだからペアの second 側が得られるってだけ。 イテレータは operator* や operator-> をオーバーロードしていて 要素へのポインタであるかのように扱えると考えていい。 http://mevius.5ch.net/test/read.cgi/tech/1683600652/956
957: デフォルトの名無しさん (スププ Sd9a-Cy5w) [] 2023/10/26(木) 22:18:49.00 ID:eAGx217zd 単に入れ子になってるだけ ポインタの先の要素がまたポインタで指してるだけ http://mevius.5ch.net/test/read.cgi/tech/1683600652/957
958: デフォルトの名無しさん (ワッチョイ ba48-g88S) [sage] 2023/10/27(金) 08:11:42.47 ID:IlYWK5hg0 >>956-957 ありがとうございました。 iteratorを返したらそのiteratorに対してさらにsecondを呼び出しているのですね http://mevius.5ch.net/test/read.cgi/tech/1683600652/958
959: デフォルトの名無しさん (ワッチョイ 5101-CP9B) [] 2023/10/29(日) 23:41:12.89 ID:JPy8qBbk0 C++モジュールについて ・CMakeが3.26で実験的対応、3.28で正式対応 ・g++は対応状況が良くないが、2024年第二4半期に対応できるとKitwareは考えている ・VS2022最新版内臓のCMakeバージョンは3.26 ・Clangとclはモジュールに対応している http://mevius.5ch.net/test/read.cgi/tech/1683600652/959
960: デフォルトの名無しさん (ワッチョイ 13ad-c8RC) [sage] 2023/10/30(月) 13:05:26.07 ID:bW5EQkS/0 Cスレで話題になっててちょっと疑問を質問 自分はgotoって全く使わないで書いているんだけど実際のところどうなんだろう https://learn.microsoft.com/ja-jp/cpp/cpp/goto-statement-cpp?view=msvc-170 「可能な限り、goto ステートメントより break、continue、および return ステートメントを使用することをお勧めします。 ただし、break ステートメントはループの 1 つのレベルのみを終了するため、深い入れ子のループを終了するには goto ステートメントを使用する必要がある場合もあります。」 俺も深い入れ子のループを抜ける方法として ・ループ部分を関数化してreturn ・breakで抜けて if(/* 抜けた理由を再度評価 */) break; を繰り返す (※後述) ということをしている けどgotoで抜けるほうが楽だろうなと思うんだけど、まあ単純なバグ(プログラマーの見落とし)を除いてどういう問題があるんだろうか for ( i = 0; i < 10; i++ ) { printf_s( "Outer loop executing. i = %d\n", i ); for ( j = 0; j < 2; j++ ) { printf_s( " Inner loop executing. j = %d\n", j ); if ( i == 3 ) break; // 内側のループ抜け } if ( i == 3 ) break; // 外側のループ抜け } http://mevius.5ch.net/test/read.cgi/tech/1683600652/960
961: デフォルトの名無しさん (アウアウウー Sad5-g+2W) [] 2023/10/30(月) 13:37:46.82 ID:xnp7PI6ya >深い入れ子のループを終了するには goto ステートメントを使用する必要がある場合もあります って描いてあるしそれが問題とは言ってないんじゃないか http://mevius.5ch.net/test/read.cgi/tech/1683600652/961
962: デフォルトの名無しさん (ワッチョイ 297c-tLJy) [sage] 2023/10/30(月) 14:24:40.02 ID:eEth4IuV0 とりあえずダイクストラ大先生の例の論文読もうぜ http://mevius.5ch.net/test/read.cgi/tech/1683600652/962
963: デフォルトの名無しさん (ワッチョイ 13ad-c8RC) [sage] 2023/10/30(月) 15:01:52.03 ID:bW5EQkS/0 まあ問題あるならそもそも導入されるはずがないわけで問題ないのは分かるんだけど 「可能な限り〜お勧めします。」と言うように使用を推奨しない理由は何なのかなと 例えば特定の処理が飛ばされて動作しなくなる場合があるとかなんかな?と http://mevius.5ch.net/test/read.cgi/tech/1683600652/963
964: デフォルトの名無しさん (ワッチョイ 9b91-lnbO) [sage] 2023/10/30(月) 15:54:27.55 ID:A0jdf3Dt0 それはrustのラベルbreakのような 安全なループの抜け方しか考えてないから安全で当たり前 c/c++のgotoはもっと凶悪なことができる http://mevius.5ch.net/test/read.cgi/tech/1683600652/964
965: デフォルトの名無しさん (ワッチョイ 297c-tLJy) [sage] 2023/10/30(月) 16:23:23.04 ID:eEth4IuV0 C++のgotoはちゃんとデストラクタを呼んでくれるから、意外とそんなに破滅的なことにはならんのだよね だからって多重ループ脱出以外で使おうとは思わんけど http://mevius.5ch.net/test/read.cgi/tech/1683600652/965
966: デフォルトの名無しさん (ワッチョイ 8101-VINR) [sage] 2023/10/30(月) 16:30:54.25 ID:hnsSyQft0 俺は例外投げて脱出する http://mevius.5ch.net/test/read.cgi/tech/1683600652/966
967: デフォルトの名無しさん (ワッチョイ 9b91-lnbO) [sage] 2023/10/30(月) 16:35:01.03 ID:A0jdf3Dt0 >>966 気軽に例外投げるとデバッガが使いづらくなるからやめときな 少なくとも仕事では http://mevius.5ch.net/test/read.cgi/tech/1683600652/967
968: デフォルトの名無しさん (ワッチョイ 13ad-c8RC) [sage] 2023/10/30(月) 16:40:27.98 ID:bW5EQkS/0 多重ループ脱出で使っている人って多いんかな? 他にこういう使い方しているとかってない? http://mevius.5ch.net/test/read.cgi/tech/1683600652/968
969: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b3e-g5YV) [sage] 2023/10/30(月) 16:45:14.84 ID:I7fISnX+0 >>963 一般論としてはそのほうが分かりやすくなるからというだけのことだと思うよ。 ただ、それで分かりやすくならないとき、 チマチマした条件チェックであっちこっち行くよりは 流れをぶった切って goto したほうがいっそわかりやすいこともあるってのが goto が必要な場面ってことなんだわ。 http://mevius.5ch.net/test/read.cgi/tech/1683600652/969
970: デフォルトの名無しさん (ワッチョイ 8101-VINR) [sage] 2023/10/30(月) 17:14:03.48 ID:hnsSyQft0 >>967 と言いますと? http://mevius.5ch.net/test/read.cgi/tech/1683600652/970
971: デフォルトの名無しさん (ワッチョイ d9ab-txvC) [sage] 2023/10/30(月) 17:24:30.69 ID:9eqG7NVC0 ラムダ式にする http://mevius.5ch.net/test/read.cgi/tech/1683600652/971
972: デフォルトの名無しさん (ワッチョイ 297c-tLJy) [sage] 2023/10/30(月) 17:57:47.45 ID:eEth4IuV0 >>968 自分としては多重ループ脱出がC++でのgotoの唯一の実用的な用途だと思ってる(とはいえめったに使わない) Cなら疑似finally的な後処理に使うこともあるけど、それはC++ならRAIIにすべきだしな それ以外の戻ったり余所のスコープに侵入したりはもちろんCでもC++でも論外 http://mevius.5ch.net/test/read.cgi/tech/1683600652/972
973: デフォルトの名無しさん (ワッチョイ 8114-Qq8E) [sage] 2023/10/30(月) 18:39:22.51 ID:VfsLhOLn0 何度も繰り返すgotoの話になると人が湧くな http://mevius.5ch.net/test/read.cgi/tech/1683600652/973
974: デフォルトの名無しさん (ワッチョイ 9b91-lnbO) [sage] 2023/10/30(月) 18:54:25.65 ID:A0jdf3Dt0 >>970 VSのデバッガは例外投げられるとメッセージでる(設定変えればオフにはできる) また設定によってはブレイクする 正常処理のくせに頻繁に例外投げられると非常にうざいし、本当の異常を見過ごす http://mevius.5ch.net/test/read.cgi/tech/1683600652/974
975: デフォルトの名無しさん (ワッチョイ 5101-CP9B) [] 2023/10/30(月) 19:04:07.11 ID:qWSrxYwr0 switchとgoto組み合わせて状態機械作ってる http://mevius.5ch.net/test/read.cgi/tech/1683600652/975
976: デフォルトの名無しさん (ワッチョイ 9b91-lnbO) [sage] 2023/10/30(月) 19:54:14.15 ID:A0jdf3Dt0 gcc拡張のlabelのアドレスとれるやつとかな 昔はイキって使ってたわ http://mevius.5ch.net/test/read.cgi/tech/1683600652/976
977: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 20:16:27.75 ID:hnsSyQft0 >>974 そりゃうざいデフォルト設定だな ループの脱出に限らず例外くらい普通に使うやろ? ちゃんと切っとけ http://mevius.5ch.net/test/read.cgi/tech/1683600652/977
978: デフォルトの名無しさん (ワッチョイ 9b91-lnbO) [sage] 2023/10/30(月) 20:43:41.27 ID:A0jdf3Dt0 >>977 例外が起こったときは何かおかしいことが起こっている予兆と考える防御的なVSをおれは支持する だいたい例外安全って何それ?ってレベルのやつも多いだろ 例外で遊ぶのは趣味のときだけにしとけ http://mevius.5ch.net/test/read.cgi/tech/1683600652/978
979: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 20:48:14.67 ID:JbGfWzUOM ループ脱出レベルで例外を使うのは変だと感じる 関数抜けないのに例外なんて… http://mevius.5ch.net/test/read.cgi/tech/1683600652/979
980: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 20:54:46.61 ID:JbGfWzUOM んで大昔に例外に似た機能のFound文Match文とか妄想してたんだな 実質タダのgoto文 http://mevius.5ch.net/test/read.cgi/tech/1683600652/980
981: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 20:54:46.86 ID:hnsSyQft0 >>978 ループに限らず孫関数ひ孫関数からエラーで脱出するときどうしてんの? 例外使わんか? http://mevius.5ch.net/test/read.cgi/tech/1683600652/981
982: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 20:57:56.27 ID:JbGfWzUOM 例外は通常動作として起こらないような動作で起こすもので 何か探すループなんかで実際に対象が見つかったとしてそれは「例外」なのか? ちがうだろー http://mevius.5ch.net/test/read.cgi/tech/1683600652/982
983: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 20:58:12.43 ID:hnsSyQft0 >>979 俺はgotoは全く書かないな パフォーマンス的にはgotoの方が良いかな? http://mevius.5ch.net/test/read.cgi/tech/1683600652/983
984: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 20:59:51.11 ID:hnsSyQft0 >>982 実にくだらない理由だと思う http://mevius.5ch.net/test/read.cgi/tech/1683600652/984
985: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 21:01:36.17 ID:JbGfWzUOM >>984 それが一般的な解釈でおかしな使い方をしてる人間は影で笑われている http://mevius.5ch.net/test/read.cgi/tech/1683600652/985
986: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 21:06:32.49 ID:hnsSyQft0 >>985 人格を攻撃するような書き込みはやめようね http://mevius.5ch.net/test/read.cgi/tech/1683600652/986
987: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 21:07:29.46 ID:JbGfWzUOM 例外はパフォーマンス的に重いしそれ以前に 正常系の出力を異常系で投げるのはおかしい まったくもって異常 http://mevius.5ch.net/test/read.cgi/tech/1683600652/987
988: デフォルトの名無しさん (ワッチョイ 297c-tLJy) [sage] 2023/10/30(月) 21:08:57.30 ID:eEth4IuV0 よその言語ではイテレータの終了通知に例外使ってたりするから人格否定するほどの話ではない C++の慣用としてやられてないし向いてないってだけ http://mevius.5ch.net/test/read.cgi/tech/1683600652/988
989: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 21:09:03.25 ID:JbGfWzUOM >>986 人格自体は攻撃してないだろ 事実 http://mevius.5ch.net/test/read.cgi/tech/1683600652/989
990: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 21:12:55.48 ID:hnsSyQft0 >>987 >正常系の出力を異常系で投げるのはおかしい これを書いたのはあなたで私ではないよ http://mevius.5ch.net/test/read.cgi/tech/1683600652/990
991: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 21:14:51.99 ID:hnsSyQft0 >>989 >>987の「例外はパフォーマンス的に重いし」のような議論は分かるが >>985は人格を攻撃している書き込み 気をつけ給え http://mevius.5ch.net/test/read.cgi/tech/1683600652/991
992: デフォルトの名無しさん (ワッチョイ 9b91-lnbO) [sage] 2023/10/30(月) 21:19:13.29 ID:A0jdf3Dt0 >>981 エラーならありだがtry catch書かされるのもだるいだろ 現実的に例外投げる場合はそのまま終了か、フルリブートするしかないときって考えたほうがいい http://mevius.5ch.net/test/read.cgi/tech/1683600652/992
993: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 21:19:21.17 ID:JbGfWzUOM 非常に大切で根本的な理由と例を挙げたのに「実にくだらない理由」としか取られないのが残念 例外はただの制御構文ではない http://mevius.5ch.net/test/read.cgi/tech/1683600652/993
994: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 21:20:50.60 ID:JbGfWzUOM >>991 実にくだらない理由か本当に? 理解不足だと思うけど http://mevius.5ch.net/test/read.cgi/tech/1683600652/994
995: デフォルトの名無しさん (ワッチョイ 1bda-9b8G) [sage] 2023/10/30(月) 21:22:28.46 ID:J+/7yoK80 凶悪といえばAnsiCのsetjmp()とlongjmp() あれらを規格に入れてるのはキチガイとしか http://mevius.5ch.net/test/read.cgi/tech/1683600652/995
996: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 21:25:34.77 ID:hnsSyQft0 >>993,994 そう思う >>982 >例外は通常動作として起こらないような動作で起こすもので これは今行っている議論の対象である >何か探すループなんかで実際に対象が見つかったとしてそれは「例外」なのか? 何に使うかの理由に名称を持ち出すのは 私はくだらないと考えている http://mevius.5ch.net/test/read.cgi/tech/1683600652/996
997: デフォルトの名無しさん (オイコラミネオ MM6d-H9h+) [sage] 2023/10/30(月) 21:28:39.53 ID:JbGfWzUOM >>996 概念だろ それが一番大切で実装の基本だろ C++自体の仕様が変わるとしても例外と言う概念に沿って変わることになるはずだ 今適当にマッチを投げていて仕様がより例外側に代わってその時その使い方は生き残れるのだろうか? http://mevius.5ch.net/test/read.cgi/tech/1683600652/997
998: デフォルトの名無しさん (ワッチョイ 8101-jlrJ) [sage] 2023/10/30(月) 21:31:50.44 ID:hnsSyQft0 >>997 templateメタプログラミングとか許せない人ですか? http://mevius.5ch.net/test/read.cgi/tech/1683600652/998
999: デフォルトの名無しさん (ワッチョイ d1ad-AT6i) [sage] 2023/10/31(火) 06:57:27.99 ID:BIE3G76Q0 Core Guideline にも例外はエラー処理だけに使えとある. 多重ループからの脱出が本当にエラー処理なの? http://mevius.5ch.net/test/read.cgi/tech/1683600652/999
1000: デフォルトの名無しさん (ワッチョイ 1379-JwVi) [sage] 2023/10/31(火) 07:21:48.58 ID:1/1CCAX60 質問いいっすか? http://mevius.5ch.net/test/read.cgi/tech/1683600652/1000
1001: 1001 [] ID:Thread このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 174日 19時間 30分 57秒 http://mevius.5ch.net/test/read.cgi/tech/1683600652/1001
1002: 1002 [] ID:Thread 5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。 運営にご協力お願いいたします。 ─────────────────── 《UPLIFT会員の主な特典》 ★ 5ちゃんねる専用ブラウザからの広告除去 ★ 5ちゃんねるの過去ログを取得 ★ 書き込み規制の緩和 ─────────────────── 会員登録には個人情報は一切必要ありません。 4 USD/mon. から匿名でご購入いただけます。 ▼ UPLIFT会員登録はこちら ▼ https://uplift.5ch.net/ ▼ UPLIFTログインはこちら ▼ https://uplift.5ch.net/login http://mevius.5ch.net/test/read.cgi/tech/1683600652/1002
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.033s