[過去ログ] 【初心者歓迎】C/C++室 Ver.106【環境依存OK】 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
594(1): 2021/03/14(日)20:26 ID:ERa14GlL(2/3) AAS
>>592
やはり「独習」の違う本でしたわw
自分はC++関係の5ちゃんスレすら最近になって見てるんで、知らなかったけど
その本が「独習」のスタンダードなんですねw
独習C++ 第4版
外部リンク:poland-it-blog.com
自分のは、↓の9位に入ってる本です。(しかも同じ出版社)
外部リンク:freelifetech.com
ご紹介の独習はやり応えありそうなので、今の本を2回ほどやってから、次のステップでそちらを検討してみますわ
595(1): 2021/03/14(日)20:28 ID:EFkbulbJ(1) AAS
QZ案外初心者やなw
でも言ってることは全面的に賛成
ポインタや参照、クラス等の基本を抑えてからでないとスマポや、C++11からの要素(右辺値参照含む)の使い方もわからんと思う
596: 2021/03/14(日)20:35 ID:ERa14GlL(3/3) AAS
>>593
大変勉強になります
今後もよろしく
597: 2021/03/14(日)20:46 ID:uaeFGveg(4/6) AAS
>>595
>でも言ってることは全面的に賛成
ありがとうございます!
>QZ案外初心者やなw
もう永遠の初心者のままだと思っていますが、それならそれで「初心者の気持ちが分かる視点からの意見の表明」という形でコントリビュートするのもありかな…、と。
598: ◆QZaw55cn4c 2021/03/14(日)22:01 ID:uaeFGveg(5/6) AAS
>>594
>>592 は歯ごたえがありそうでしょう?私もこの課題を最初に見たときは眩暈がしました…
それから 10 年くらいかな??それくらいたってから 2chスレ:tech を書き、なんとか卒業できたような気がします
なおこれは、これでも例外方面に配慮が行き届いていない、とさらに書き直した気がしますが、その書き直しは失くしてしまいました……
599: はちみつ餃子 ◆8X2XSCHEME 2021/03/14(日)23:21 ID:aW+jce3e(2/2) AAS
個別の機能を理解してからそれの組み立て方を学習するのがまどろっこしく感じる人もいると思う。
抽象度の高いほう (スマートポインタなど) から解体していく形での
学習のアプローチもそれはそれでありかもしれん。
個人的には個別の機能を先に学んだほうがいいとは思うんだけどね。
実例から学ぶと使い方のパターンとして頭に入ってしまって正確な理屈を
きちんと習得できない気がするから。
そうは言っても途中で学習を諦めてしまうようだと正確さもくそもないから、
人によってわかりやすさは違うし学習にはいろんなアプローチがあるということは
覚えておいてほしい。
600: ◆QZaw55cn4c 2021/03/14(日)23:51 ID:uaeFGveg(6/6) AAS
確かに、私が理解している狭い範囲においても、イテレータが先かポインタが先か、とか
C++11 / std::thread から入門したけど posix-thread なんか知らん!とか
そんな人から補強説が来るのが楽しみです
601: 2021/03/15(月)07:36 ID:PXZ12KYt(1) AAS
>>591
ご回答ありがとうございます。
理解しました。
その辺も調査しながらやります。
602: 2021/03/15(月)13:58 ID:RVKfnS+W(1) AAS
QZが意外と素直で好印象度アップ
逆に高飛車な餃子の高感度ダウン
603: 2021/03/15(月)21:47 ID:pqfQRyG1(1) AAS
Qちゃんは昔からいるけど態度は変わらんね
ときどき自前のコード上げてるあたりは好ましい
プロへのリスペクトは持ってるし謙虚ではある
餃子ちゃんはマジメというか
いちいち規格に沿って発言してくれるんで好ましい
ただコード上げてるのはみたことないんで実力は不明
アマチュアなのにときどき調子乗っちゃってるのも微笑ましい
604: 2021/03/15(月)23:09 ID:kCaDVUc0(1) AAS
はちみつのコードたまーに見るけどすごい変な癖があるよ
意味があるなしに関わらず固執するタイプなんだろうな
605(2): 2021/03/16(火)13:45 ID:A61zCves(1) AAS
参照を返す関数の質問です。
オブジェクトの複数のパラメータを設定するときに、obj.param1(...).param2(...).param3(...); みたいに呼ぶ
パターンがあるじゃないですか(ちなみにこれって名前はあります?)
これをやりたいときは
Obj& param1(int val) { mParam1 = val; return *this; }
みたいに参照を返すように宣言しないとダメですよね?
Obj param1(int val) { mParam1 = val; return *this; }
だと、obj.param1(...) は動くけどリターン用にオブジェクトの(余計な)コピーが発生する、
obj.param1(...).param1(...) みたいに呼んだ場合はオブジェクトのコピーに2番目の呼び出しが行われ、
結局破棄されてしまうので、objに2番目のparam1()の呼び出しが反映されない。
省5
606: 2021/03/16(火)16:13 ID:xnFU2goU(1) AAS
builderパターンやね
607: はちみつ餃子 ◆8X2XSCHEME 2021/03/16(火)16:40 ID:AqAKN3jJ(1/2) AAS
クラス構成を見ればビルダーパターンにあてはまりそうだけど、
メンバ関数を連鎖していく表記法のことはメソッドチェインと言ったり、
目的から言うと名前付き引数イディオムということもある。
外部リンク:en.wikibooks.org
(要するに考え方のレイヤによる。)
608: 2021/03/16(火)17:00 ID:7emEuadh(1) AAS
obj + a + b + c
operator + () は obj そのものを書き換えず、新たな実体を戻す
obj += a
operator += () は obj そのものを書き換えるついでに、自分自身の参照を戻す
これのどっちに合致したほうが都合がいいかで
複製を戻すか、自分自身の参照を戻すかを分けてる感じ
609(1): 2021/03/16(火)20:32 ID:VN15UowM(1) AAS
>>605
> (ちなみにこれって名前はあります?)
大きく言うとFluent interface
外部リンク:en.wikipedia.org
610(1): ◆QZaw55cn4c 2021/03/16(火)21:25 ID:EIvloTfy(1) AAS
>>609
その wikipedia の C++ サンプルは int main() が二箇所に現れていますが、これってどう読むのですか?
611(4): 2021/03/16(火)22:36 ID:ne+I3KBD(1) AAS
すみません。
仮に、本を買って勉強する場合は独習C++というのがいいのですか?
独習C++はCの知識がなくても大丈夫ですか??
612: はちみつ餃子 ◆8X2XSCHEME 2021/03/16(火)23:10 ID:AqAKN3jJ(2/2) AAS
>>610
単に使い方のサンプルを便宜的に main で書いてあるだけでふたつあるのは特に意味ない。
613: 2021/03/18(木)18:04 ID:KYeguKkE(1/2) AAS
>>611
上下前次1-新書関写板覧索設栞歴
あと 389 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s