2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

C++は難しすぎ 難易度:4

1 :デフォルトの名無しさん:2008/09/16(火) 18:31:24 .net
どう考えても難しすぎだろ!
読みやすい名前に改名しないBjarne Stroustrupには げんあり

前スレ達
難易度:1 http://pc5.2ch.net/tech/kako/1058/10586/1058675178.html
難易度:2 http://pc5.2ch.net/tech/kako/1063/10633/1063323615.html
難易度:2 http://pc11.2ch.net/test/read.cgi/tech/1071697977/

586 :デフォルトの名無しさん:2017/06/25(日) 22:23:33.41 ID:dn2uysTM.net
>>585
とにかくデストラクタにはvirtual付けるようにしてる。

587 :デフォルトの名無しさん:2017/06/25(日) 23:29:06.06 ID:crK74dJZ.net
今ほど継承の問題点が言われていなかった過去の常識という印象。

588 :デフォルトの名無しさん:2017/06/26(月) 00:00:32.21 ID:n6GngECu.net
virtualなデストラクタが必要なのは、上に言われてる通りポリモーフィズム使う時だけなんやで
基底クラスのポインタに派生クラスをまとめて管理する(基底のポインタからdeleteする)んでなければ
virtualにする必要は無いんやで
でないと、vtblを持たない、メンバ変数の通りの内容(パディングが無ければ、サイズもメンバの合計に等しい)
しか持たないクラス/構造体とか作れないしな。

継承の問題点って具体的にどの辺?自分にはちょっと想像つかんかった

589 :デフォルトの名無しさん:2017/06/26(月) 00:56:00.08 ID:RgMKiEkv.net
継承(is-a)は、構造が硬直化する。柔軟ではない

一方、包含(has-a)は柔軟で、処理の委譲(丸投げ)にも使われる。
依存性の注入(DI)も、最近の流行

590 :デフォルトの名無しさん:2017/06/26(月) 01:01:22.15 ID:GM19K0OY.net
なんか中途半端に本を読んでコピペした感じがうざい

591 :デフォルトの名無しさん:2017/06/26(月) 08:13:51.70 ID:Th5Kxani.net
世間でそう言われているという話ならコピペでも不思議はなかろう。

592 :デフォルトの名無しさん:2017/06/26(月) 10:18:51.97 ID:n6GngECu.net
>>589
has-aの関係だと言えるものならそうすべきだけど、is-aの関係を包含でやると
そのうち必ず破綻するよ?

593 :デフォルトの名無しさん:2017/06/29(木) 12:50:46.65 ID:MWDK7HMB.net
まぁ多態しないならデストラクタを仮想関数にする必要ないってのはその通りで
shared_ptrなんかはダウンキャストしても正しいデストラクタが呼び出せるように
ポインタ自体がデストラクタを持ちまわってるし、知らなきゃ驚くようなことをしている



そんなことより、C++が雑多だっていうなら
筆頭は多重継承、ダイヤモンド継承だろ
だーれも使ってない機能、goto以上に誰も使わない、盲腸のような機能
ここから読み取れるのは、つまりは要らない機能は使わなければよい
ってのがC++の流儀であり習わし
今に始まったことではない、昔からそう

594 :デフォルトの名無しさん:2017/06/29(木) 12:56:18.30 ID:MWDK7HMB.net
多重継承のダイヤモンド継承がどれぐらい使われないかというと
明らかに問題があってめちゃ複雑なのに
ここで例に上がらないぐらい誰も使ってないし
すっかり忘れて頭から抜け落ちるぐらい使われてない
使ったこともないから困ったこともない、そんぐらい使われてない
こんな使ってはならないような機能を持っている言語なんだから
使う側で工夫するしかないのだわな

595 :デフォルトの名無しさん:2017/06/29(木) 13:09:10.82 ID:MWDK7HMB.net
ちなみに仮想継承なんか、実用的なプログラムで使ったことあるやつ居るのかね
コンパイラ開発者がかわいそうだよ
実装が面倒くさそうなのに誰も使わないんだから

596 :デフォルトの名無しさん:2017/06/29(木) 13:47:44.72 ID:QLNa2n95.net
NVIインターフェースを複数継承するみたいなクラスはよく書くから多重継承がないと困る
そして、スマポが持ってるのはデストラクタではなくてカスタムデリータでしょ?
RAIIのためのデリータを指定するのと、ポリモーフィックなクラスのデストラクタを仮想にすることは独立だと思うけど

597 :デフォルトの名無しさん:2017/06/29(木) 14:59:04.83 ID:MWDK7HMB.net
インターフェースの多重継承は別に否定してないよ

598 :デフォルトの名無しさん:2017/06/29(木) 19:22:15.33 ID:RPV5s2DX.net
ん?
オブジェクト志向バリバリだと、普通に多重継承起こるでしょ?
「インターフェースクラスの」ではあるけど。

599 :デフォルトの名無しさん:2017/06/29(木) 20:32:48.96 ID:QLNa2n95.net
>>597
インターフェースかどうかはどうやってジャッジするの?

600 :デフォルトの名無しさん:2017/06/29(木) 20:35:07.19 ID:xH5cN2nI.net
子供の発表会みてるような微笑ましさがあるな
ID:MWDK7HMBのことな

601 :デフォルトの名無しさん:2017/06/29(木) 20:38:35.47 ID:MWDK7HMB.net
インターフェースの多重継承は否定してないって言ってるのになぁ
インターフェースの多重継承は他言語でも見かけるけど
C++の場合は実装の多重継承も出来て、これはJavaやC#では禁止されているわけだけど
CにOOを追加したのがC++の売りであるから、継承は筆頭株主というか鳴り物入りというか
当時としてはCに対するアドバンテージで、売りであったはず
そこでマズったのはハッキリ言ってかっこ悪いが
いらない機能は使わなきゃ済む話、それがC++
仮想継承とか誰が使うの?ってね
gotoより使わないし、gotoより害悪

602 :デフォルトの名無しさん:2017/06/29(木) 20:45:11.69 ID:xH5cN2nI.net
この子の発表はまだまだ続くの?

603 :デフォルトの名無しさん:2018/03/11(日) 21:00:49.54 ID:2FqbHSvs.net
ageてみる

604 :デフォルトの名無しさん:2018/03/11(日) 21:05:50.78 ID:sEfAJdP7.net
gotoは案外よく使うけどな。

605 :デフォルトの名無しさん:2018/03/15(木) 17:22:50.07 ID:+IqDDMxO.net
江添亮とかいうやつやたら偉そうだけど
C++界になんか貢献したの?

606 :デフォルトの名無しさん:2018/03/15(木) 19:26:00.92 ID:NnpmsWbw.net
Linux プログラミング・インタフェース、Michael Kerrisk, 千住 治郎、2012

C++11/14 コア言語、江添 亮、2015

組込み開発者におくるMISRA‐C:2004―C言語利用の高信頼化ガイド、MISRA‐C研究会、2006

神の啓示を受けし者たちが記した、神の書。
この3冊が出版されているのは、日本だけ

皆、これらの本を持って、山ごもりするw

607 :デフォルトの名無しさん:2018/03/19(月) 01:38:56.72 ID:K5wpoJU5.net
>>605
俺は江添氏のブログで助かってるけどなぁ
新しい仕様を実践的に教えてくれるのでわかりやすい
対してメタプログラミングやらコンパイル時のポリモーフィズムやらを
「今どきのC++の使い方」とばかりに押し付けてくる風潮がうざい(ああいうのはアマチュアの意見だと断言できる)

アマチュアが言ってるのはわかるけどC++系のライターにまでそういうバカが居るから困る
誰とは言わんけど

608 :デフォルトの名無しさん:2018/05/03(木) 13:03:51.75 ID:oVIVMK38.net
>>606
1番目のはLinuxシステムプログラミングと内容が似てるみたいだけどそっちのが良いの?

609 :デフォルトの名無しさん:2018/05/12(土) 11:05:17.41 ID:pDgCeBjY.net
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://sketchapp.com/extensions/plugins/
ttp://photoshopvip.net/103903

ttps://goodpatch.com/blog/sketch-plugins/

610 :デフォルトの名無しさん:2018/05/12(土) 18:34:04.79 ID:TkoJoFTb.net
>>593
標準ライブラリをはじめ多重継承は至るところで使われてるし、禿4にも、真のC++使いは恐れなく多重継承を使うと書かれている。
個人的には多重継承を避けてきたのだが、そろそろ使ってみようかと思う。
昔のgoto危険みたいな話なのかも。
使った方が良い場合は確かにあるので。

611 :デフォルトの名無しさん:2018/05/12(土) 18:36:45.29 ID:TkoJoFTb.net
禿4によると過度の総称型も良くないらしい。
よくありがちなObject型ってやつ。

612 :デフォルトの名無しさん:2018/05/16(水) 07:04:16.92 ID:Lmfmb/K/.net
>>610
多重継承が一番いいと思ったらためらいなく使うわ
gotoも同様にね、まあ、これはgotoの出番かーと思っても
やっぱり必要なかったなとなるんでgoto使う機会は今のところないな

613 :607:2018/05/16(水) 07:54:53.37 ID:OVunt3L8.net
>>608
「Linux プログラミング・インタフェース」の著者、
Michael Kerrisk は、Linux man ページを、10年書いてきた人。
世界中の開発者から、神と崇められている!

開発者は、この本を枕にして寝ろ、と言われている

この本に似ている本は、
詳解 UNIX プログラミング 第3版、2014

614 :607:2018/05/16(水) 08:05:22.04 ID:OVunt3L8.net
C++テンプレートテクニック 第2版、
επιστημη(えぴすてーめー)・高橋 晶、2014

επιστημη も、C++標準化委員会の会員

江添も、テンプレート・メタプログラミングの需要があれば、
本を書きたいって言ってたけど、既にこの本が出ている

615 :デフォルトの名無しさん:2018/05/17(木) 00:02:23.47 ID:AFgiB6OA.net
江添はそいつらよりちょっと頭が悪いからまともに見えることもあるってだけだな。
本質は変わらん。

616 :デフォルトの名無しさん:2018/05/23(水) 19:19:19.68 ID:Au5e7VGg.net
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

LNCSZ

617 :デフォルトの名無しさん:2018/05/24(木) 10:41:08.30 ID:cPlRxlDn.net
LNCSZ

618 :デフォルトの名無しさん:2018/07/04(水) 22:54:19.04 ID:gFgZc5FG.net
UP4

619 :デフォルトの名無しさん:2018/07/06(金) 12:31:44.56 ID:uTPDH9XV.net
UP4

620 :デフォルトの名無しさん:2018/08/13(月) 19:07:44.00 ID:HA278kx6.net
屋上屋を架す形での仕様の肥大化が続いてもう巨大迷宮みたいな言語
理解してるって自信があるのはコンパイラ開発者や規格策定者だけじゃないかってレベル
いやそれさえも怪しいけど
そんな言語を一介のユーザーが進んで使いたいなんて思うわけがないよね

621 :デフォルトの名無しさん:2018/11/12(月) 21:20:39.85 ID:bGNsn64w.net
K&Rを再読したんだけどさ…
スタックVMの作り方だろこれ。
「足りない分は自分でつくってね」という。
それで出来たのがjava,ruby,python。

禿に騙されて寄り道するなよ。

622 :デフォルトの名無しさん:2018/12/26(水) 07:17:27.14 ID:All8nQju.net
知れば知る程嫌いになる言語C++
パフォーマンスを維持したまま互換性を維持したまま言語仕様を肥大化して
コード以前に言語が汚くなっているC++
COBOLと同じ負の遺産C++

623 :デフォルトの名無しさん:2019/03/20(水) 22:40:27.94 ID:+CFazFfW.net
知れば知るほど嫌いになるってわかるわw

624 :デフォルトの名無しさん:2019/03/21(木) 01:07:15.29 ID:XdhJMiFj.net
C++はモエタンじゃないのか。

625 :デフォルトの名無しさん:2019/03/21(木) 01:47:35.05 ID:3oGduxiP.net
C#は追加する機能を厳選してて頭良かったな

626 :デフォルトの名無しさん:2019/03/21(木) 22:12:10.88 ID:wYbYtUv+.net
constだらけ

627 :デフォルトの名無しさん:2019/03/21(木) 22:46:17.10 ID:XdhJMiFj.net
constで修飾できない言語って気味が悪い。

628 :デフォルトの名無しさん:2019/03/22(金) 00:19:42.26 ID:aMVb4R4+.net
javaとか気持ち悪いよね
オブジェクトの中身弄くるのか分からなさすぎて

629 :デフォルトの名無しさん:2019/03/24(日) 17:14:35.66 ID:IKnss1ja.net
C++って無料?

630 :デフォルトの名無しさん:2019/03/25(月) 06:30:33.45 ID:KaFs91jQ.net
無料の処理系があるかってことなら「ある」。
例えば Linux 上で gcc 使えば無料だよな。
流石にコンピュータ本体までタダで入手できるとは言わんけど。

C++ のコンパイラを作って売る商売をする場合でも、
どこかとライセンス契約するような形でお金を取られることはないみたい。
『C++の設計と進化』にそんな感じのことが書いてあった。

正式な規格の本はスゲー高いらしいが、よく知らん。

631 :デフォルトの名無しさん:2019/03/29(金) 09:06:59.40 ID:FHKNInbw.net
スレが立ってから10年経過してるけど、まだやってるんだ。
最初の方を読むと、これじゃC++なんて無くなる勢いで貶されてるけどまだあるね。

632 :デフォルトの名無しさん:2019/04/23(火) 16:54:08.12 ID:SKnIqZTr.net
javaのfinalもそうだけど
finalやconstだらけで眩暈がするというか
凄くゴチャゴチャした感じがして嫌

633 :デフォルトの名無しさん:2019/04/23(火) 20:43:57.37 ID:9Fqsfzh5.net
Yomiuri Giantsサーブ?

634 :デフォルトの名無しさん:2019/04/23(火) 23:31:26.18 ID:5KWAynrs.net
いまどきのES7/TypeScriptだと、ほとんどの行にconstかawaitかあるいはその両方が書かれる。

635 :デフォルトの名無しさん:2019/04/26(金) 00:20:05.24 ID:05TfqASJ.net
もう少し
abc(const: int i,int j)
みたいな事くらいいえねぇのかよ
やたら省略が好きなくせに

総レス数 635
121 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★