1 名前:デフォルトの名無しさん mailto:sage [2019/11/07(木) 11:35:36.76 ID:4wggfTwe.net] C++に関する質問やら話題やらはこちらへどうぞ。 ただし質問の前にはFAQに一通り目を通してください。 IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。 前スレ C++相談室 part145 mevius.5ch.net/test/read.cgi/tech/1568362404/ このスレもよろしくね。 【初心者歓迎】C/C++室 Ver.105【環境依存OK】 mevius.5ch.net/test/read.cgi/tech/1556142878/ ■長いソースを貼るときはここへ。■ codepad.org/ https://ideone.com/ [C++ FAQ] https://isocpp.org/wiki/faq/ www.bohyoh.com/CandCPP/FAQ/ (日本語)
588 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 13:19:26.79 ID:mZNCV5xz.net] 「きちんと仕事したくて伝聞に頼らず一次ソースを確認」 なんか胡散臭くなってきたな・・・・ 「仕事でやってる人もフリーソフト開発者も」のどちらにも当てはまらないのに噛み付いてきたんだろうな エアプログラマの相手してスレ無駄遣いした、すまんかった
589 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 13:20:38.21 ID:6uL3pMIB.net] ソフトエンジニアでC++の規格書を読む人なんてほとんどいないよ そんなのを読んでも良い設計にはつながらない
590 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 13:23:39.63 ID:6uL3pMIB.net] 規格書で確認しないと書けない/読めないようなコードは 基本的には悪いコード
591 名前:デフォルトの名無しさん [2019/12/04(水) 13:26:15.79 ID:sb3P/SSe.net] ゴールポスト移動中ですね判ります
592 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 13:27:52.48 ID:Z3kanSY4.net] 規格書ではなく規格票な つまらん齟齬を避けたいのも 規格票を読む目的の1つだ
593 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 13:42:20.48 ID:MnUOTj8y.net] >>578 でも最近、特に海外の方で自分が知っている素朴な C++ とは全く違う 書き方をしている C++ コードを良く見かけるようになったので、 新しい仕様を学ばないと理解できなくなってきた。 STLを深く使うと C++ とは思えないようなコードになるので。
594 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 13:46:18.71 ID:P3QxjggL.net] フロント周りは全くついていけない コロコロと次から次へ節操なく移り変わって馬鹿じゃねえの、とつい老害的思考に
595 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 13:48:46.17 ID:rFzpkzsp.net] C++20でコンセプトやモジュールやコルーチン記法が入ってきたら、そういう古兵にはもはやC++には見えんだろうなぁw
596 名前:デフォルトの名無しさん [2019/12/04(水) 13:49:01.49 ID:sb3P/SSe.net] CUIのフロントはTurboC++だったな
597 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 14:25:33.26 ID:33/nOLSe.net] C++で音鳴らせるようになるの?
598 名前:デフォルトの名無しさん [2019/12/04(水) 15:02:13 ID:vhuKISsK.net] バスブーストですか?
599 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 15:46:25.30 ID:MnUOTj8y.net] 「フロント周り」って何のことですか??
600 名前:デフォルトの名無しさん [2019/12/04(水) 16:29:27.61 ID:vhuKISsK.net] フロント企業が一般消費者と直接取引する会社で、バックが暴力団じゃなかったっけ。
601 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 19:40:12.56 ID:FhHmXOPx.net] つまんな
602 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 19:50:18.04 ID:FhHmXOPx.net] 企画書を読まないとわからないコードなんかあると思ってるのか? 読むべきはcppreferenceのようなアホにも分かるように優しく解説してくれてる文書 分からないことがあれば必要なキーワードを検索欄にぶち込んだらすぐに分かるようにできている
603 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 20:09:28.90 ID:6yabeJe9.net] アホのサバイバルか 唾棄
604 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 20:33:31.84 ID:ZHZFM6qI.net] プロでもアマチュアでもいいんだよ 初心者でも学生でもいいんだよ ただし 身の程知らずのド素人が知ったふうな口を利いてるとさすがに叩かれるよ
605 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 20:49:47.75 ID:+udf6Yna.net] >>577 > ソフトエンジニアでC++の規格書を読む人なんてほとんどいないよ お前の周りはそうなんだろうな > そんなのを読んでも良い設計にはつながらない 読んだことない奴はそう言うよなw >>578 お前規格票に何を書いてるのか知らんだろ まあそのまま沈んどけ
606 名前:デフォルトの名無しさん [2019/12/04(水) 21:20:21.85 ID:xsMIF6qI.net] ていうかC++のスレでこんな流れが加速するなんて 思ったよりC++erて数いたんだなぁ、というのが素朴な感想
607 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 21:22:48.52 ID:DNIeF7b9.net] アホでも炎上商法はできるってことだ
608 名前:デフォルトの名無しさん [2019/12/04(水) 21:54:34.88 ID:vhuKISsK.net] じゃあ点呼取ります。 江添クン!
609 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 22:15:09.71 ID:ZHZFM6qI.net] > 思ったよりC++erて数いたんだなぁ、というのが素朴な感想 C++erというよりここは単に無職と学生サンのすくつでしょw
610 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 22:19:24.66 ID:7vpFGLgR.net] とりあえず>>593 は無職だと思う
611 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 22:27:51.85 ID:UrCkYA+I.net] c++11以降みたいなああいうコード書きたいなら変な見栄はらずにpythonでもrubyでもやってたらいいんだよ。
612 名前:デフォルトの名無しさん [2019/12/04(水) 22:31:45.53 ID:QZ1McR0s.net] C++コンパイラやSTL準拠ライブラリを作る仕事に関わってたら規格書を読まないとどうにもならないと思うけど、 そうじゃない人は市販のC++入門で十分じゃないかな。
613 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 22:33:17.56 ID:J7QAHgda.net] >>596 金型の会社に出向いて定期的に講座やってるらしいね 金型の演算ってそんなC++が効くものなんだ CGALみたいに幾何分野でバリバリ使われるのは知ってるけど、設計の分野も同じなんかな
614 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 22:33:57.92 ID:UrCkYA+I.net] てか規格通りにまともに動くなんてのは例外ってことは 普通にc++を仕事で使ってりゃ分かるもんだがな。 その時点で江添みたいに実際の仕事で使ってないのが丸分かりになる。
615 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 22:58:37.27 ID:CXPVLMHx.net] 今時MSVCでも大部分は規格通り動くぞ
616 名前:デフォルトの名無しさん mailto:sage [2019/12/04(水) 23:08:27.56 ID:7MoywY5f.net] >>598 どこからそんなアホな決めつけしてるんだよ… もしかして会社からセミナーとかにも行かせてもらえないような底辺なのか?w
617 名前:デフォルトの名無しさん [2019/12/04(水) 23:22:31.61 ID:vhuKISsK.net] 式を教えてもいいけど、理解できるかどうか。
618 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2019/12/05(Thu) 00:23:37 ID:XYdg44Nt.net] 必要なら読むし必要じゃないならないなら読まないってだけのことだろ。 そんなん場合によるっつーつまらん結論しかないと思うが。
619 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 00:28:04 ID:wvPvimki.net] はいいつものクソ正論いただきました
620 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 00:35:44 ID:dM4mxJ4y.net] 実の無い(楽しそうでもない)話をつづけられるよりはクソ正論で鎮火してくれたほうがマシに思う。 件の人たちはそれで鎮火するような人でもないんだろうけど。
621 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 00:43:36 ID:2jEFb1Vk.net] 互いに見下しあい罵倒しあってこそC++er ここは不毛なマウント取り合戦の場C++スレ 鎮火する必要なし
622 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 01:15:42 ID:+j7BXLrg.net] また髪の話をしてる
623 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 02:59:31.66 ID:9zn59iXI.net] すまんが、レベルの低い人から見ると、レベルの高い人が気軽に話した 内容が「マウントをとられた」と思ってしまうんだと思う。 そういうつもりで言ってなくても。 これは、公立の小学校でよく起きる現象で、問題になっている。
624 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 03:04:36.20 ID:9zn59iXI.net] >>611 蛇足だが、これは欧米諸国でよく知られた現象。 アメリカで記名製掲示板が流行るのは、匿名性掲示板ではどうしても それが起きてしまうので、それをよく分かった上でやっているのかも 知れない。それだけの理由ではないだろうけど。
625 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 06:18:49.18 ID:eAZGTWY0.net] >>609-610 この流れを評するのに「不毛」って言葉を選ぶのはC++らしいね。 「マウント」も落語「頭山」を想起させる。
626 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 08:26:15 ID:V4GZwDuE.net] しかしあれだな、C++ほどハゲがよく似合う言語を知らない
627 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 11:35:47 ID:tjjaS4Ug.net] 江添亮のC++入門 (webドラフト版? https://ezoeryou.github.io/cpp-intro/#再帰関数 ) を読んでます。 >例えば以下は階乗を計算する再帰で書かれたループだ。 > int factorial( int n ) { ... > return n * factorial(n-1) ; > ... >このコードは末尾再帰になっている。 >末尾再帰は非再帰のループに機械的に変
628 名前:キできる特徴を持っている これ factorial(n-1) が返ってきたらスタックに積んである n を掛けないといけませんよね。 厳密には末尾再帰とは言えない気がします。 そういうの無しに「直帰でコール元に値を渡せる場合」に末尾再帰と言えるのだと思ってたんですが、 私の理解が間違っているのでしょうか? まあ今のコンパイラーは賢いので細かい事気にする必要ないのかもしれませんが。 [] [ここ壊れてます]
629 名前:デフォルトの名無しさん [2019/12/05(Thu) 11:37:52 ID:IbmhSLeW.net] >>611 馬鹿ほどそれを気にするよな 判らなかったら調べれば良いのに 調べずに反論し始めるω
630 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 12:32:19 ID:RTwQsK8m.net] >>615 末尾再帰じゃないよ
631 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 13:51:16 ID:tjjaS4Ug.net] >>617 ですよね。 ちょっと気になってたのでスッキリしました。
632 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 18:12:34.01 ID:5PaJAEA2.net] 簡単にループに出来るものはループで記述した方が良いよ 末尾再帰の場合もそうじゃない場合も 実行速度、使用リソース、 デバッグしやすさ、 スタック計算ツールなどツール類の使用、 などなどいろんな要素で
633 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 18:50:53.78 ID:9zn59iXI.net] >>619 本当は、再帰呼び出しだとスタックサイズの制限により呼び出しの深さ(階数) に制限が付いてしまう。ローカル変数を沢山使っている関数で、 1000万個のオブジェクトを再帰的に処理すると、スタックオーバーフロー が出てもおかしくない。しかも、最近のマルチスレッド環境だと、 スタックのサイズはどうしても制限が強くなり勝ち。
634 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 18:58:39.27 ID:5PaJAEA2.net] 一言で言うと「使用リソース」だね
635 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 19:02:32.74 ID:5PaJAEA2.net] 「最近のマルチスレッド環境」はあまり関係ない 固定スタックサイズの組み込みCPUの方がヤバい PICみたいなハードウェアスタックだともっとヤバい
636 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 19:28:34.51 ID:ZSRmDUxb.net] 検討事項が増えるから仕事で再帰は使わんね。 理解できない人も多いし。
637 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 19:42:30.55 ID:9zn59iXI.net] >>622 シングルスレッドだと、スタックは自動伸張することが可能だった。 ところが、32BIT のマルチスレッド環境だと仮想メモリ空間のアドレス 空間自体が不足してしまうので、それは難しい。 ただし、64BIT 環境だと仮想メモリ空間が大きいので余り問題にならない かも知れない。
638 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 19:54:34.15 ID:5zWy9aB9.net] 再帰の例でよくでてくるフィボナッチ数列の計算なら 再帰より for で二変数保持しながら計算した方が性能でも可読性でも上だろうな。
639 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:04:07.94 ID:5PaJAEA2.net] >>624 Windowsだとスタックサイズは32bitでも64bitでもデフォルト1MBだぞ 適当な事を言わないように
640 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:10:23.46 ID:5PaJAEA2.net] >>625 組み込み型サイズ程度だと普通にexpを使って計算する方が速い 多倍長の巨体な値でも 素直に1個ずつ計算すると非常に遅い もっとずっと高速な方法がある
641 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:16:10.38 ID:5PaJAEA2.net] 再帰をループに置き換えるので面倒なのは いろんな箇所でたくさん分岐するヤツ まあでも面倒ってだけで、 必ず再帰を使わずに記述出来る
642 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:21:10.87 ID:5zWy9aB9.net] treeを辿るコードなんかは再帰のが書きやすいわな。
643 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:23:50.71 ID:5PaJAEA2.net] treeをたどるコードは再帰コールするのが1箇所だからまだ楽な方
644 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:24:01.37 ID:9zn59iXI.net] >>629 Tree は再帰でやるべきものの一つ。 スタックの制限も、Treeの「段数(階数)」自体が余り深くなりにくいので 問題が生じにくく、再帰でやっても問題ないものの一つでもある。 ただし、親子関係の深さ方向だけを再帰にし、兄弟方向は、単純な ループを使うべき。
645 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:28:30.76 ID:5PaJAEA2.net] 再帰にすべきかどうかはものによる 例えばstd::setの検索は普通ループを使う
646 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:38:37.36 ID:tjjaS4Ug.net] フィボナッチとかで再帰 末尾再帰を捨てる(性能とスタック無駄遣いに目を瞑る)と可読性はかなりいいと思うんです。 int fibo(int n) { if (n<=2) return 1; else return fibo(n-1) + fino(n-2); } その場で使い捨てるようなプログラムにはアリだと思います。 でも末尾再帰を目指すと.. . . int fibo(int n, int a=1, int b=1){ if (n<=2) return b; else return fibo(n-1, b, a+b); } どうなんですかね. . .。Lisp脳だと forループより好まれるかもしれません。 ちゃんと末尾再帰最適化が効けば性能は良いのでしょう。
647 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 20:48:58.05 ID:5PaJAEA2.net] >>633 前半 見やすさはそれが一番だね 記述が定義通りなので 後半 それなら普通のループの方が分かりやすくないか?
648 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 21:03:01.64 ID:tjjaS4Ug.net] あちら(Lisp)の世界ではそうでもないみたいですよ。
649 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 21:09:55.69 ID:5PaJAEA2.net] へ〜
650 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 21:23:00.63 ID:oayOS3nx.net] C++てparallel_forとか未だにないんだな、まぁTBB使えばあるけど標準規格には用意されてない 仕方がないんでPartitionerは自前で作ったが、そんな付け焼き刃用意したところで、 いちいち明示的に各スレッドの終了の待ちあわせせにゃならん。 挙げ句の果てに mtx.lock() ---- mtx.unlock() て orz クリティカルセクションはブロックで囲って lock(mtx){ } とでも書かせろや オートunlockとかしょーもないもんは用意してバカじゃねーのか しかも、未だにasync/await はなくて、C++20で実装て。 何が必要かわかってないのかC++規格作ってるアホ共 死ね
651 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 21:36:40.64 ID:JlYSK1cQ.net] つstd::lock_guard
652 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 21:51:24.38 ID:u0CioZb2.net] adync awaitなんてネイティブで実装しようとしたら面倒なのわかるだろうに それでもぶっこんでくるのだからc++11以降は完全にポリシー変更しているよね
653 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 21:57:53.51 ID:dM4mxJ4y.net] >>637 std::for_each(std::execution::par, ...) じゃダメだったの?
654 名前:デフォルトの名無しさん [2019/12/05(木) 22:07:45.52 ID:q0kDwfyl.net] ツリーの巡回はイテレータにするとスタックとキューを入れ替えるだけで深さ優先と幅優先を切り替えられますよ。 STLのスタックとキューはインターフェースが違うのでひと工夫必要ですが。 algorithmも使えてウマウマです。
655 名前: mailto:sage [2019/12/05(木) 22:28:33.56 ID:IPfJ90pV.net] >>615 末尾再帰ならこう書くかと https://ideone.com/GG1x2O
656 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 22:53:24.80 ID:wvPvimki.net] おいおい そこはcpsで書いてマウント取るところだろ
657 名前:デフォルトの名無しさん mailto:sage [2019/12/05(木) 23:00:13.77 ID:uXzevjeq.net] >>637 お前のそのクソコードlockとunlockの間で例外投げたらあっという間にデッドロックだぞ すぐにlock_guardに書き換えるか死ぬかどっちか選べ
658 名前:デフォルトの名無しさん [2019/12/05(Thu) 23:44:19 ID:JallKI28.net] 状況説明: Visual Studio 2019 Version 16.4.0 で std::exception::what() の戻り値を無視すると以下のようなC4834の警告が出るようになった。 > warning C4834: 'nodiscard' 属性を持つ関数の戻り値を破棄しています なお、catchスコープでeについて何か書かないと以下の警告が出てしまう。 > warning C4101: 'e': ローカル変数は 1 度も使われていません。 今は以下のように記述して警告C4101が出ないようにしている。 try { // do something. } catch(std::exception& e) { e.what(); } 質問: C4101とC4834の両方とも出ないようにするにはどうしたらいい?
659 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 23:57:51 ID:2jEFb1Vk.net] >>645 (void)e.what();
660 名前:645 [2019/12/05(Thu) 23:58:13 ID:JallKI28.net] 自己解決しました。 try { // do something. } catch(std::exception& e) { (void)e; }
661 名前:645 mailto:sage [2019/12/05(Thu) 23:59:17 ID:JallKI28.net] >>646 回答ありがとうございます。
662 名前:デフォルトの名無しさん mailto:sage [2019/12/05(Thu) 23:59:36 ID:uXzevjeq.net] catch(std::exception&) でええやん
663 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 00:01:11 ID:Cd9yyMrn.net] >>645 ほんとうに例外を何も処理せず握りつぶしたいの?どんな状況?
664 名前:645 mailto:sage [2019/12/06(金) 00:12:07 ID:Rpl4CMwP.net] >>650 スレッドの安全な終了。
665 名前:645 mailto:sage [2019/12/06(金) 00:19:17 ID:Rpl4CMwP.net] >>649 マクロ切り替えでeを使うコードも使えるようにしておきたいので無名変数だと都合が悪い、という感じです。
666 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 00:24:27 ID:hYHuFzfT.net] VCは2019から返り値を捨てるコードに警告出すようになって鬱陶しい
667 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 00:27:04 ID:R5wwI9SD.net] [[nodiscard]]を確認せずに捨てる奴が悪い
668 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 00:30:55 ID:Cd9yyMrn.net] >>651 std::exception& で受けると bad_alloc とか関係ない例外もまとめて無視しちゃいそうで、 それは「安全」なのか疑問。
669 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 00:51:39 ID:jImJStBO.net] 終了させるにしてもちゃんとやれ
670 名前:645 mailto:sage [2019/12/06(金) 00:54:05 ID:Rpl4CMwP.net] >>655 どうせなにもできない事には変わりないので無視でいいかなと。 スレッド終了時にプログラム固有のリソース解放処理を確実にやりたい目的でのthrow&catchなのでC++標準ライブラリ自身の出す例外は無視、的な。
671 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 01:06:58 ID:jImJStBO.net] ログ出力という大事な仕事があるだろ
672 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 02:04:04 ID:Cd9yyMrn.net] >>657 それだとほんとに何か問題があって例外が飛んでるときに気づけなくて危なさ沿う、という話。 struct thread_exit {} とか専用の例外をthrow&catchしとけば、目的を達成しながら問題検出もできそうな。
673 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 06:39:31.51 ID:pHI2Uem1.net] >>654 正論
674 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 07:31:29.17 ID:zfbHpqVT.net] >>637 for_each(parあんじゃん いちいち待ち合わせなんて まだやってんの?
675 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 09:21:05 ID:WVLKHQiQ.net] 寒い 34vv.net/8d8/
676 名前:デフォルトの名無しさん [2019/12/06(金) 12:56:29 ID:vJ3416lC.net] >>644 てめえの糞おつむでは未だにlock_guardなんか使ってんのかよww んな互換性のためだけに残ってるコード人様に勧めてどーするつもりだ。
677 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2019/12/06(金) 14:04:15 ID:6r3WfMRZ.net] >>635 LISP では再帰で書くなどという俗説を信じるな。
678 名前:デフォルトの名無しさん [2019/12/06(金) 14:28:22.22 ID:hyokDgJv.net] もしかしてメンバ関数の定義で引数や戻り値に不完全型を使っても許されるようになりましたか? autoが許されるのだから、許されて良いような気がするのですが。
679 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 14:55:34.36 ID:qwyC8IXX.net] 厳密にはわからんけど、クラステンプレートやメンバ関数テンプレートだと それらが実体化されるより前であれば不完全型は使えるはず(コンパイラによっても変わることあるけど autoも似たような理屈だと思う、宣言だけして関数定義より前で使うとエラーになるはず
680 名前:デフォルトの名無しさん [2019/12/06(金) 15:04:26 ID:hyokDgJv.net] https://ja.cppreference.com/w/cpp/language/function > 関数の引数の型および戻り値の型は、削除された関数を除き (C++11以上)不完全クラス型にできません。 完全性のチェックは関数の本体の文脈で行われます。 これはそういうことを言ってるんですかね。
681 名前:デフォルトの名無しさん [2019/12/06(金) 15:08:45 ID:hyokDgJv.net] 関数本体内のコンテキストで完全型になっていれば良いのであれば、いろいろできるような気がする。 あんなことやこんなことが。
682 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 15:14:03 ID:qwyC8IXX.net] あーそういうことだね 関数定義前なら不完全でもいいってことだと思う すまんテンプレートには限らないぽいな
683 名前:デフォルトの名無しさん [2019/12/06(金) 15:29:10 ID:hyokDgJv.net] どうもありがとう。
684 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 15:45:43.96 ID:LIPaYWZD.net] >>661 step =1000000; for( double r2 = R2 - dev2; r2 < R2 + dev2; r2 += dev2 / step ){ } こいつを並列化したいんだが、ループカウンタをintに変更するとしても、 2M ノードのvector確保するわけ? ループカウンタ設定するために並列化要るがなw 単にループ回したいだけなのに巨大なメモリ要るてww 調べてみてもC#やtbbのparallel_for相当がないんだが これら見ながら企画作ったC++規格策定メンバーってお前と同じパープリンじゃないのか?
685 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 16:13:34 ID:zfbHpqVT.net] >>671 おい、真面目に情報提供している者に対してパープリンとは何だ 俺だけじゃなく640もパープリン呼ばわりか 後出しという自分の落ち度を棚に上げて そういう発言は5chのフランクさでは済まんぞ
686 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 16:14:35 ID:hYHuFzfT.net] 初手人格否定はC++erのセオリー
687 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 16:14:40 ID:jImJStBO.net] >>671 お前が生きてる価値の無いゴミなだけ
688 名前:デフォルトの名無しさん mailto:sage [2019/12/06(金) 16:39:35.59 ID:qwyC8IXX.net] >>661 もたいがい無意味に煽ってる書き込みだと思うがw