1 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 17:53:02.14 ID:FOAGvAbs.net] 次スレを立てる時は本文の1行目に以下を追加して下さい。 !extend:on:vvvvv:1000:512 C++に関する質問やら話題やらはこちらへどうぞ。 ただし質問の前にはFAQに一通り目を通してください。 IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。 前スレ C++相談室 part135 https://mevius.5ch.net/test/read.cgi/tech/1522495206/ このスレもよろしくね。 【初心者歓迎】C/C++室 Ver.102【環境依存OK】 mevius.5ch.net/test/read.cgi/tech/1509780815/ ■長いソースを貼るときはここへ。■ codepad.org/ https://ideone.com/ [C++ FAQ] https://isocpp.org/wiki/faq/ www.bohyoh.com/CandCPP/FAQ/ (日本語) ----- テンプレ ここまで ----- VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
448 名前:デフォルトの名無しさん [2018/07/29(日) 20:13:22.07 ID:LQAkWqzt.net] クソはただのクソ袋 コイツラはただのウンコ製造機だからな レス見ればすぐに分かる
449 名前:デフォルトの名無しさん [2018/07/29(日) 20:15:29.45 ID:LQAkWqzt.net] クソニートどもがなんで こんなしょうもないスレの存続で必死なのか分かるだろ 居場所がココしかないから 現実逃避の場所がココだけだからな 簡単簡単
450 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 21:17:20.23 ID:UevmDhbi.net] イカれを演じて暴言吐いてないと日常の不安に耐えきれないんだろうな…… なんかひどく可哀想な人だ……
451 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 00:40:10.37 ID:yV+7/MBa.net] デストラクタで 型Tのメンバ変数Aのデストラクタ(cout等記述)が呼びされるはずなのに 型Tのメンバ変数Aと同じアドレスを持ったデストラクタ(解放だけ行う)が呼びされるんだが こんなバグ何が原因かわからないんだ助けてください もちろん型Tのデストラクタは一種類しか宣言してないし virtualもつけてるんだが…
452 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 00:58:21.77 ID:CKgR1uCb.net] コードで示してくれ
453 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 06:36:20.73 ID:qFKbkkH1.net] Linuxでベースクラスで持たせてて元の型にキャストしてたりする?
454 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 08:41:35.39 ID:qnQc5JET.net] C++で今まで作ったものってなんですか? 自分はとにかく競プロしかしてないので、なにか作りたいんですけどC++という言語でしかできないことがあまり思いつかなくて
455 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 08:51:39.47 ID:yNVCdeG4.net] >>438 言語処理系はCで書くより楽だよ
456 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 08:56:56.06 ID:qnQc5JET.net] >>439 ありがとうございます! 系統で答えてもらって助かります
457 名前:はちみつ餃子 mailto:sage [2018/07/30(月) 14:21:10.33 ID:pFBrx3WW.net] >>438 「できること」という意味では C と大差ないわ。 でも、プログラムの部品 (ライブラリ) に高度な抽象化を被せることが出来る。 要するに高レイヤでは楽できる可能性が高い。 レイヤを分ける必要もないような小さなプログラムでは ありがたみを感じにくいかもね。
458 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 19:42:11.85 ID:qnQc5JET.net] >>441 ありがとうございます 確かにC++はそういう要素大きいですよね! そこがいい部分で好きなんですけど、やっぱり難しい部分ですよね
459 名前:デフォルトの名無しさん [2018/07/30(月) 21:47:15.09 ID:hbo0m8kQ.net] 上のほうで、唇がメンタイコの欲深そうなのがいるな。 2chに引っ込んでいろや。屑が
460 名前:デフォルトの名無しさん [2018/07/31(火) 20:27:14.08 ID:jvSfH+BG.net] たらこじゃなくてか。
461 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 21:48:26.82 ID:f0EnkAzQ.net] 明太子はたらこのこと 唐辛子を塗したやつは辛子明太子
462 名前:デフォルトの名無しさん [2018/07/31(火) 22:24:08.58 ID:jvSfH+BG.net] そっかw 素で辛子明太子と間違えたわ。
463 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 00:24:00.80 ID:VquDbSfz.net] アルゴリズム辞典みたいなものを手元に置いときたいんだが、最も支持されてるのってどれ? ・網羅性が高い ・支持されている(売れている) ・日本語版がある ・コード例はあってもなくても良くて、あるとしたら C/C++ か擬似コードで という条件で テーマ別に「どれとどれとどれを持っとけばまず問題ない」という言い方でもありがたい とにかく網羅性を重視してる
464 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 00:35:56.57 ID:/iJJIMGp.net] 会社でC++書くことになったんですがコードが(ダブル)ポインタの嵐で読みにくいことこの上なくて辛いです 他にもstring使わずにchar配列だったり、vector使わずに配列だったり Cのスタイルで書ける部分はできるだけCのスタイルで書くほうがやはり好まれるものなのでしょうか 前に個人でちょろっと書いたときはもうポインタ使わなくて済むならできるだけ使わないように!なんて思いながら書いてたんですが
465 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 00:42:34.65 ID:hfBYO5dB.net] 色々な事情があるのかも Cからの移植とか 小規模だとヒープはトラブルの元なので極力使わないとか そもそもヒープが無いとか
466 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 00:56:47.14 ID:8dN6QsuX.net] >>448 ポインタ使わなくてもイテレータの嵐を渡り歩いたり スマートポインタが何をしているのかを理解するには ポインタを使う場合のノウハウ知識が必須だよ stringやvectorを避けている箇所にはそれなりの理由があるから 極力思い込みを排除して状況をよく見たほうがいい
467 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 01:01:22.52 ID:uLizLGZM.net] >>447 合計\7,000-- 珠玉のプログラミング 本質を見抜いたアルゴリズムとデータ構造 | ジョン・ベントリー, 小林 健一郎 |本 | 通販 | Amazon ttps://www.amazon.co.jp/dp/4621066072 O'Reilly Japan - アルゴリズムクイックリファレンス 第2版 ttps://www.oreilly.co.jp/books/9784873117850/ C言語による最新アルゴリズム事典の詳細情報 : Vector ソフトを探す! ttps://www.vector.co.jp/soft/data/prog/se002453.html
468 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 02:12:56.94 ID:VquDbSfz.net] >>451 ありがとうございます。 最初のも辞典的なものなんでしょうか。 複数冊持つならばテーマ毎が良いかなとも思いましたが、特定のテーマに集中したものだと翻訳されているものが少ないのかもしれませんね。 2つ目と3つ目が部分的に補完しあっていることを期待して、両者とも購入しようかと思います。
469 名前:デフォルトの名無しさん [2018/08/01(水) 02:19:31.07 ID:Bdxs44t0.net] the art of computer programming numerical recipes コレしかないわ
470 名前:はちみつ餃子 mailto:sage [2018/08/01(水) 02:25:19.38 ID:oNWxQcbM.net] >>451 「C言語による最新アルゴリズム事典」はこないだ改定されて「C言語による標準アルゴリズム事典」という表題で売ってるぞ。 amzn.asia/cgZYRrQ ロングセラーになりすぎたせいで「いつまで最新やねん」というのは常々
471 名前:言われづづけてたからなぁ。 [] [ここ壊れてます]
472 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 02:49:17.77 ID:GZaAdjmn.net] >>448-450 多分そいつは、Scott Meyers を知らないし、 ほとんどの言語に「Effective 何々」があることも知らないのだろうw そいつに、Scott Meyers を知っていますかって聞けば? プロで、江添亮とかScott Meyers を知らん奴は、いない
473 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 06:52:26.90 ID:l9oYGZY2.net] 会社に対してそいつ?
474 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 07:00:43.17 ID:0Pfosj1X.net] stringやvectorはヒープなので、呼び出し回数の多い関数で毎回インスタンスを作る場合は処理時間に注意したいところ。
475 名前:はちみつ餃子 mailto:sage [2018/08/01(水) 07:02:13.71 ID:oNWxQcbM.net] まあ状況によるわなー。 後から伸長 (または縮小) が必要ないような固定長のデータを std::vector に入れるのは豪華すぎるので、 避けれるなら避けたいということは有りうる。 それでも今どきなら std::array を使って欲しいけど、 古いプログラムをツギハギしながら使ってるような場合にはなかなかそうもいかない事情があるのかもしれん。 単純には判断できないので、わかんないことはそれを書いてるやつに聞けとしか言いようがないんじゃない?
476 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 07:40:49.09 ID:OccwPm6d.net] stl使うと同バージョンのライブラリを実行環境にインストールするという考慮も増える
477 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 07:53:02.77 ID:hfBYO5dB.net] えっ? 何か勘違いしてないか?
478 名前:デフォルトの名無しさん [2018/08/01(水) 18:55:57.40 ID:4hR5DucF.net] やっぱり通になると、明太子ひとつ、辛子抜きで・・・とか注文するんだろな。
479 名前: mailto:sage [2018/08/01(水) 19:05:43.34 ID:6NCuGzpD.net] >>447 https://www.amazon.co.jp/dp/4774196908 今年になって改訂版が出たらしい、だれかレビュー頼みます
480 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:11:49.62 ID:a1G0tkY3.net] >>462 第2刷買ったっけな。役に立ったと思う。
481 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:41:42.72 ID:7TmTR3QV.net] >>462 板を荒らすのやめろよ
482 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 20:37:51.59 ID:/iJJIMGp.net] ポインタの件ですが参考になりました。まぁこっちはほぼ初心者で相手はベテランの上司なので何も言えない聞けないってとこですね stackoverflowとか読んで生ポインタあんま使うなスマポ使えオブジェクト使えるときは使えみたいなこと書いてあるの見るとこれでいいのかなって思いますねええ
483 名前:はちみつ餃子 mailto:sage [2018/08/01(水) 23:13:55.56 ID:oNWxQcbM.net] std::unique_ptr は実行時の速度ペナルティもほとんどないので、避ける理由はあんまりないよな。 例外がとんだ時のロールバックについても面倒なことを考えなくて良いし。
484 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 23:34:41.68 ID:GZaAdjmn.net] たぶん、Scott Meyers とか「Effective 何々」とか、知らんのだろ たぶん正常に動作する、過去の資産を持っていて、それをコピーして使う作り方なのかも 現場でよくあるのは、サンプル欲しいと言うと、過去のソースコードを持ってきて、 これは動くから、そのままコピーして使って下さいと言われる 新しい事をしようと思うと、環境構築やらで、動かない部分が出てくるので、非常に面倒 それに過去のソースコードは、あちこちで使われているから、バグが少ないという実績があるけど、 新しく作ったものは、バグ出しが大変。 安定するまで、かなりの期間が必要 <
485 名前:br> よほどの理由がない限り、新しく作らない [] [ここ壊れてます]
486 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 03:53:49.14 ID:iSPNCiYK.net] >>451 どれか一つで良くね ほとんど被ってるっしょ あえて選ぶならアルゴリズムクイックリファレンス 網羅性ってヤツを追及するなら、同じようなもんいくつも買うんじゃなくて自分で言ってるようにテーマに特化したものを買うしかない 名前忘れたけど文字列アルゴリズムのアレとか
487 名前:はちみつ餃子 mailto:sage [2018/08/02(木) 06:10:43.23 ID:ksgx4qMg.net] >>447 Knuth の 「The Art of Computer Programming」もその条件に当てはまると思う。
488 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 07:12:52.80 ID:NSwKZwuS.net] 圧縮アルゴリズムなんか、本で憶えたんじゃなく FAXだとかモデムみたいな具体的なブツで憶えたな その他のアルゴリズムも単行本より雑誌で 憶えたのが多いし
489 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 10:20:23.60 ID:KhTk1OQU.net] そのあたりのアルゴリズムはCマガで覚えた
490 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 10:41:45.24 ID:zFALVR92.net] >>468 これ? 高速文字列解析の世界――データ圧縮・全文検索・テキストマイニング (確率と情報の科学) | 岡野原 大輔 |本 | 通販 | Amazon ttps://www.amazon.co.jp/dp/4000069748 「高速文字列解析の世界」サポートページ - daisuke.okanohara ttps://sites.google.com/site/daisukeokanohara/iwanami_string_world
491 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 11:27:51.52 ID:KhTk1OQU.net] そのジャンルは大体の場合は条件固定じゃないからツール類を使ったほうがいい
492 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 17:47:42.68 ID:QC+SfWnq.net] >>447 ,451,468 蟻本の参考文献揃えるのがおすすめ
493 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 17:50:02.28 ID:QC+SfWnq.net] って思って確認したらそんな良くなかったスマン
494 名前: mailto:sage [2018/08/02(木) 19:12:17.99 ID:hFhSdR7O.net] >>470 文書圧縮について手元に置いていつも参照しているのは https://www.amazon.co.jp/dp/478983672X/ 今は、jpg の本が欲しいと思っていますが、なにかいいのはありますか?
495 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 19:38:11.37 ID:nAUx6Lke.net] C++極めたいんだけど、どうすれば極められる? 仕事はJavaScriptが主です 今はアルゴリズムの本読んでるのですが、個人的にはC++ドラフトの間違いを指摘できるレベルになりたいです
496 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 19:48:55.00 ID:1EegAYN5.net] そんな事を人に聞いてる様じゃ一生無理
497 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 19:57:10.95 ID:Ro0F3mb9.net] >>477 oracle Solaris Studio の開発者になるとか ホワイトスミスに弟子入りするとか じゃね?
498 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 20:52:27.89 ID:jf+aoeV/.net] >>478 いや実際C++使ってる職場少ないし、どうやってレベルを上げればいいのか分からん オープンソースを読むくらいしか思いつかない >>479 ジョークはいい
499 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 21:22:49.70 ID:EkY0QbOC.net] コンパイラ読めないと話にならんのじゃないか?
500 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 21:53:24.64 ID:0KRWeg2T.net] >>480 職場に何を頼るの?
501 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 22:18:49.50 ID:NSwKZwuS.net] >>476 jpegが赤に弱いなんてのも ギョーカイの人とのおつきあいで ホーソレデ氏になった
502 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 22:24:42.73 ID:Ar8oKNDv.net] >>480 読んでばかりじゃなくて自発的に自分で実際に書いてみないことには、いつまでたってもたいして身に付かないだろう。 極めたいなら、言語仕様の一つ一つを実際に使ってみて具体的に役立つケースや制限、制約、限界を体感して、メリットデメリットを洗い出すくらいのつもりで試してみたら?
503 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 23:26:26.75 ID:jf+aoeV/.net] >>482 嫌‥ >>484 の言うとおり実践的な立場かな >>484 それはもちろん分かる
504 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 02:17:39.89 ID:gpdbLiuq.net] >>485 まずは仕事で使う自作ツールをC++で書くとか 千里の道も一歩から
505 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 02:23:34.66 ID:Ja3muTb1.net] 自作ツールはまず、スクリプト言語でやってみて、速度面などで不満があった時だけC・C++に置き換えるのがいいと思うけどどうなの。 スクリプト言語とコンパイル言語の使い分けを覚える良い機会になる。
506 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 02:28:52.17 ID:gpdbLiuq.net] >>487 目的が自作ツールを作ることならそれで間違ってないが C++を極めることが目的みたいよ
507 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 07:41:26.05 ID:jYMqs03L.net] 極めると言うても、次の規格が出たらもう過去の知識だし、 いくら頑張っても到達できないゴールのような気がするなぁ。 規格を作る側に入り込めるなら話は違うかも知れんが。 C++は、自分より後ろにいる人をバカにするのが好きな人も多い感じだけど、 「そんな奴にはならん方がええ」
508 名前:はちみつ餃子 mailto:sage [2018/08/03(金) 08:11:10.53 ID:KKWcqInB.net] ある程度の言語機能しか使わない範囲でも使い物になるように C++ は設計されてる。 ある程度を学めばその範囲内でも実務に使える。 もちろん深い理解があればプログラムをよりよく構成できるので、 実務に使いながら平行して段階的に学ぶということが出来る。 このことは設計者が著した D&E に書かれてる基礎理念のひとつだ。 地に足の着いた、現実的なものとして設計されてるんだよ。 だから、言語としての C++ だけに偏って学ぶのはお勧めできない。 言語として不格好な部分も現実の中では相応の合理性があったりして、 それを学習するのに適しているのは現実のプログラミングだと思う。 ただ、余談だけど、段階的に学べるようにというのはスタート地点として C を想定しているように思う。 C が当然の基礎知識としてあった時代には そこからシームレスに C++ を学んでいけるように設計するのは妥当な選択だったかもしれないが、 今の時代には C++ の中の C の部分は色々と足を引っ張ってもいるので 歴史が長いと泥臭い部分も積み重なっていくものだなぁと思いました。 (小並感)
509 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 10:14:53.94 ID:lq/KEYA1.net] 20年近く使ってるけど、ドラフトとか目にしても 「こんな機能来るんや!」ってwktkするだけだな 規格を知ってれば極めてる、みたいな風潮が最近あるけど間違いやで 言語はあくまで道具だから使ってなんぼ
510 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 10:29:03.00 ID:cfhQf2V5.net] みんな深いレスありがとう ただ自分はどうしても諦めきれないので、仕事以外の時間は、C++に関するサイトや書籍やコーディングに費やすことになると思う Pythonは学ぼうとは思ってるけどね
511 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 10:49:41.39 ID:TY6Sib0f.net] ttps://github.com/python/cpython/tree/master/Python 今ならpythonのソースコードもオマケで学べるよ
512 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 12:16:04.74 ID:cfhQf2V5.net] >>493 ありがとう こういうのはいいですね
513 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 15:41:42.81 ID:Ja3muTb1.net] スクリプト言語には、ハッシュテーブルやディクショナリなどと呼ばれるキーと値の組を保存するコンテナ機能が存在する。 一般に高速とされるC++だが、実は、ハッシュテーブルだけはスクリプト言語の方がアクセス速度が速かった。 ただし、C++におけるstd::mapだけがハッシュテーブルに該当した頃の話。 今は、std::unordered_mapがあるのでスクリプト言語と同等以上の速度でハッシュテーブルにアクセス可能になっている。
514 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 18:32:37.47 ID:j4paKoWq.net] mapはハッシュテーブルに該当しないだろ。 そういうときは辞書とかマップとか連想配列とかと呼ぶべきだ。
515 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 18:52:42.14 ID:9KGEdKKU.net] mapは連想コンテナだが
516 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 19:03:27.95 ID:j4paKoWq.net] ハッシュテーブルじゃない
517 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 23:13:28.65 ID:B+FOIxCl.net] クラス設計で悩んでいるんだが、みんなの意見を聞きたい やりたいのは、いわゆるデザインパターン template methodを使ったクラス設計 class Parent { public: void execute() { method1(); method2(); method3(); } private: virtual void method1(); virtual void method2(); virtual void method3(); } 子クラスのChild1, Child2でmethod1(), method2(), method3()をそれぞれオーバーライドして処理を分けている ここで、Child3を追加しようと思うんだけど、method1()の内容はChild2::method1()と全く同じになる これをどう実装しようかいろいろ悩んだんだが、どれもピンとこない。 そもそも最初の設計がおかしーんじゃねーの?とかこうしたらよくない?とかここおかしくね?とか意見あったら頼む 一応以下は自分が考えていること @Child2, Child3の親クラスを抽出して、そっちに共通処理として書く →実装のために継承関係を作るのはあまりよくない気がする A別クラス(Utilクラス?)を作ってそっちにまとめる →メンバ変数とか使ってると少し面倒かな。本質的でない気もする。 BChild3::method1()->Child2::method1()とコンポジション的にする せっかく横のつながりができないようにしてるのに、ここでできるのはよくない C親クラスに共通メソッドを作って、Child2::method1()とChild3::method1()はそれを呼ぶ →しっくりこないけど、妥協点かな・・・ DしゃーないChild2::method1()コピペで! →これはまあ論外かな、時間が全くないときの最終手段
518 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 23:20:08.01 ID:cWBuX5k9.net] Child3をChild2の子にすれば?
519 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 23:22:51.86 ID:Ja3muTb1.net] 共通処理を継承関係と無縁なtemplate関数にできないか検討してみては?
520 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 23:26:40.59 ID:Xb0+UQnK.net] >>500 それは多分なんらか整列の問題でやりたくないんだと推測 俺なら4かな・・・
521 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 23:28:34.49 ID:Xb0+UQnK.net] 4の改良?として 実装ファイルの無名スコープにvoid method1(const Parent& p)かな
522 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 23:36:56.13 ID:xr+Hum6X.net] 派生させるんじゃなくてメソッドの処理を別クラスにして移譲させるんじゃないの?
523 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 00:12:06.53 ID:AH7fLvgn.net] >>499 > 実装のために継承関係を作るのはあまりよくない気がする と言いつつ > 親クラスに共通メソッドを作って、Child2::method1()とChild3::method1()はそれを呼ぶ とか意味わからん 全然関係ないのにたまたま一緒になったと言うなら > しゃーないChild2::method1()コピペで! しかないと思うが
524 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 00:38:11.84 ID:hQAAmMi0.net] コーディング規約で、引数や戻り
525 名前:値に参照型は使うな。わかりにくくなるから。ポインタで渡してポインタで返せ ってことになってるんですけどこれ一般的な考え方なんですかね。生ポインタ使いまくりの方がよっぽどわかりにくいと思うんですけど [] [ここ壊れてます]
526 名前:デフォルトの名無しさん [2018/08/04(土) 00:53:09.47 ID:CpwGeL+S.net] そんなことよりメソッドでクラスのインスタンスが変更されない場合 そのメソッドにちゃんとconstつけろよ 引数でクラス使う場合も、そのクラスのインスタンスが変更されない場合 その引数にちゃんとconstつけろよ わかった?
527 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 00:58:03.49 ID:0clFfLhT.net] >>506 言ってることがわからなくはないが一般的ではないと思う むしろ参照のほうが一般的な気がするな
528 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 01:05:30.18 ID:Xh+3QD0k.net] 引数については、読み書きする引数は注意をひくためにポインタ渡しにして、読み取りだけの引数は参照渡しにするといいのでは。 戻り値については、失敗したことを意味するNULLを使えるのでポインタのほうがうれしいかも。
529 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 01:06:58.94 ID:QByQ49xB.net] >>499 execute が virtual でないってことは Parentを基底にしてコレクションしなくてもいいってことでOK? >>501 の言うように template で mixin 的に書いたら こんな感じになったー https://ideone.com/CcRHnO ChildがKlassになって兄弟関係がなくなってる
530 名前:デフォルトの名無しさん [2018/08/04(土) 01:12:24.24 ID:CpwGeL+S.net] 戻り値なんか全部intでいい 0未満ならすべて一貫してすべてエラー 失敗がありえないブーリアンだけはかろうじてあり 引数をポインタで渡せないとNULLを渡して処理したい場合の処理ができない そういうとき困るから全部ポインタで
531 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 05:12:55.60 ID:iUNKVgUH.net] 素人ばっかりかw 「More Effective C++」の項目1 だろ Effectiveも読んでいない奴が、プログラミングやってるのが不思議。 どの言語でも、Effectiveは、入門書の次に読む本やぞ 参照は、確実にNULL じゃない場合。 また、参照に再代入はしない事
532 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 05:25:27.41 ID:YA1hWK5Y.net] HRESULTも知らないヒヨッ子がいきってるな
533 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 06:40:25.30 ID:O/qEXyQX.net] 参照に再代入ってどうやんの
534 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 07:29:12.24 ID:o+LfwS0J.net] cからのコードが多い場合は統一のために参照渡しにしないってのはあるかな。
535 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 07:33:54.06 ID:YA1hWK5Y.net] extern "C"に参照渡しなんかするかよ
536 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 07:42:44.96 ID:Xh+3QD0k.net] たかが参照にストレスを感じるようになったら、C/C++プログラマをやめた方がいい。引退時。
537 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 08:00:44.90 ID:mQQzn2Q+.net] >>506 C++を知らない老害が自分の為に決めた規約 積極的に逆らおう
538 名前:デフォルトの名無しさん [2018/08/04(土) 08:29:49.29 ID:Xh+3QD0k.net] 私見を言わせてもらうと、多様性を受け入れ状況に合わせて柔軟に合わせていくのもプログラマあるいは技術者の重要なスキルなので、 一神教的な偏狭な人は若年性認知症とまで言ってのける気はないがかなり情報処理能力が低くなっているはずなので、プログラミングをやめた方がいい。
539 名前:デフォルトの名無しさん [2018/08/04(土) 09:34:28.56 ID:0uMuTyGR.net] プログラミングがどうこういうより国語を勉強しろ。
540 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 09:35:16.17 ID:o+LfwS0J.net] 柔軟なのと規約を決めないのはまた別だけどね。 多様性といって新しい言語使って同じ過ちを繰り返している人を何人も見てると 色々バカバカしくなるってところはある。 老害と同じくらい歴史を見ない若造も有害という現実を見るのも良い。
541 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 09:50:53.54 ID:2dadGiC9.net] まあ少なくとも>>506 が老害であるのは確か 実務経験が少ない若者が多いのも当たり前
542 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 09:53:11.49 ID:F7vd0ILk.net] 老害なんて言っている奴、10年後に自分がそう呼ばれるって事気がついてないのかな・・・
543 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 09:55:58.68 ID:2dadGiC9.net] 老人全てが老害になるわけではない 害があるから老害と呼ばれる
544 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 09:59:13.29 ID:2dadGiC9.net] >>521 歴史? 過去発生した問題点や注意点を伝えるのは上司や先輩の役目 言語自体の歴史、CPU自体の歴史なんか 興味があるヤツだけ勉強すれば良い
545 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 10:02:32.30 ID:F7vd0ILk.net] 数人のグループで開発しているなら、あえてコーディング規約を設けずしても出来るだろうが 100人、1000人規模で開発しているなら、工業製品としての品
546 名前:質管理として必要になるでしょう [] [ここ壊れてます]
547 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 10:03:35.96 ID:pDxZw3/e.net] >>525 ぼくがしらないのはまわりがおしえないから さすがゆとり
548 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 10:08:29.90 ID:2dadGiC9.net] ん? おれは伝える側の人間だが