C++は難しすぎ 難易度:4
■ このスレッドは過去ログ倉庫に格納されています
自分だけ苦労してると思ってやがるw
オブジェクト指向という言葉を聞きかじってる分マシだろ?
俺なんかC言語も知らないズブの素人のおもりなんだが。しかも別会社の そういう奴に限って三角関数とか学校に忘れてきてるけどなww >>470
俺より苦労してる奴に言うつもりはないよ。レスしすぎた結果、叩きに来た奴が来たから
払ってるだけだ >>472
お前がな
>>473
お前も苦労知らずだな。上司に手足縛られながら使える機能を使うしかない状態で
一々線引きが出来ると思ってんだからな
だからノイマン式コンピュータを知らん奴しか言わんのだろ>スレタイ >>472
お前のような奴が書いた使えないコード直させられる身にもなってみろよ >>473
お前の最初にC++で書いたコードはC++の仕様を全部使い熟しているのか?
仕事中にそういう離れ業が出来ると思ってるのか? このスレの内容の技術レベルに到達して無いのよ、要は。
その後の転嫁もみっともないし、それを客観視も出来ていない。もう発言やめとけって。 >>478
だよな。
自分ひとりだけ周回遅れなのに本人、それを分かってない。
だからなんかチンプンカンプンなことを平気で言い続ける。
毎日そうやって釈迦に説法してんだろうな。 笑わせるなよ、ネイテブが書けないトーシロの集まりだろ?こいつら
ポインタが分からないレベルかと思ったが、意識しないでも書く方法もあるからな
「C++で悩んでます。C言語なんて簡単です」って言える訳だ。 ここまで底の浅さを自覚できないでいるってのも凄いな。 いいよな、その程度で他人を苦労知らずだって非難できるんだから その程度で人を周回遅れとか言う方が笑いものだろ
だいたい何が「いいよな、」なのか意味不明
面倒なライブラリを嫌がってた奴がいたから、ちょっと同意を見せただけで
まさか同レベルと思ってるんじゃないだろうな? C++が難しいんじゃなくてライブラリが使いにくいんじゃ?>>1 難しいのは当たり前
熟練者にとって生産性が上がるように進化してるが
理解しなければいけないことはどんどん増えている 優先度が低く複雑度が高いものを導入して劣化していくコースに嵌り込んだのではないか C++って、コンパイラ・コンパイラ・コンパイラだから STLもboostもノータッチですわ
今時はC++で正規表現が使えるんだっけか 他の言語はあれは駄目これは駄目って感じで窮屈。C++は自由!
あれを忘れてた、これを忘れてたって事になるけど >>500
テンプレートも例外も大好きだ・・・
なんでも例外投げる
コードがとてもシンプルになってグッドです
最終的に誰がcatchするんかは知らんけど、
少なくともデバッグの役には立ってる
もはやコレなしには生きられない >>501
たまにコードがググっとスッキリする時は使うんだけどねえ
gotoと同じくらいの頻度だわ >>504
コンパイラについてるソース見てみよう
pairなんて、ただ2個のメンバに入れてるだけ
しかもムーブ付き
忙しいときにmakeとかしちゃって良いんだろか?
って思ってたけど、わりと単純な仕様で低コスト pairは簡単だけど、tupleを自前で作ろうとしたら死ぬ思いをした >>508
最低限、これは知っとかなきゃダメでしょう
っての以外は、必要に応じてだと思う
Cと共通するような部分、基本的な言語仕様、昔ながらのポリモーフィズムって感じな
やり方に加え、少しばかりテンプレートに慣れ親み、それとの違いを認識し、それに
加えて右辺値参照、ムーブセマンティクス(これらは必須)を抑えとけば、とりあえずは
十分だと思う
あとは必要になってから、その都度学習する
最初から全部とか無理 面倒な技術を使う場合、大抵出来る人がラッパ組んで他の人はそれ使うだけじゃない? 今はJavaもC#もテンプレート&関数オブジェクト全盛だし
相対的に難易度は減ってると思うんだけどな
今メジャーな言語でC++固有の難しい所ってvirtual継承とムーブぐらいじゃね
細かく見ればunionとかplacement newとか色々あるだろうけどさ c++の凝ったコードを見てると上には上がいるんだなーと思わせてくれる
しかしdefineが使いまくられているコードは読む気が失せる defineだけが頼みという事もあった。こりゃC言語じゃんって有様 GUI専門言語とか計算専門言語とか通信とかデバイスとかオブジェクトライブラリの標準化で楽になろうよ
…でも専門に作ったはずが何でもやるようになるのもよくある話 >>516
もうどっかの標準規格団体がビシッと決めてくれないかね? 標準から外れた新しいハードを作ろうとする連中をビシッと排除することが大事 初心者会の動画を見てわかったこと
C++は初心者レベルになる事すら難しすぎ 未だに難しい書き方した方が偉いと思ってる馬鹿が一番多い言語。 まあ最新の書き方の使い方を広めるために
プログラムの仕事はしませんとか言い出す馬鹿がいるような言語だからな。
c++ がいかにそういう馬鹿であふれてるか表す良い例だと思われる。 C++は使う機能だけ学べば使えるようだけど
高度な機能を使ったソースを読み下して学習が捗らない
古いCのソースなら何とか読み下せるけど
C++恐ろしい子 スタティックなメンバ関数からインスタンスへのリファレンスをstd::make_sharedで作ろうとしたら
プライベートコンストラクタが呼べねぇって怒られた
暫く「は?」ってなった
仕方なくfriend struct __gnu_cxx::new_allocator;したらMacでビルドが通らなくなる事案が発生。
最後にはもう何もかも面倒くさくなってpublic:したけど
今ググったら継承させたクラスを関数内に作ってup-castする方法が出てきたわ。
引数無くて良いならこれでも良いんだけどね・・・。 C++は入門書すら難しすぎ
Bjarne Stroustrupのプログラミング入門書の査読の感想
ttps://cpplover.blogspot.jp/2016/08/bjarne-stroustrup.html >>530
紹介されたページを読んでみたが、C++の入門書じゃなくて
プログラミングの入門書で使用言語がC++って本みたいだね。
あと、内容が難しいんじゃなくて、内容が酷いという意見。
これから訳書を売り出そうってのに原書をボロクソに貶すとは
思い切った人だわ。それだけに信憑性も感じるけど。 「内部コンパイラエラー(ICE)に関するものなど深刻なものを含む110以上のバグが修正されている」
GNU Project、バグを修正した「GCC 6.2」リリース | OSDN Magazine
https://osdn.jp/magazine/16/08/23/160000 よく知らないけどテンプレート機能ってマクロみたいなものだよね
マクロを読んで理解したりマクロで展開されたコードを読み下すのって地獄ちがう?
LISPの同期しながらネット上でやり取りするコードもマクロを使っていて
生成されたコードがボリュームテンコ盛りかつなにやっているのか意味不明な難易度だゲンナリすると言う
理解できないー学習に剥かないー当然不具合の発見も困難な感じ >>533
マクロだと地獄になるから
そうならないようにしたのが
テンプレートじゃね? マクロ地獄から抜け出せたと思ったらテンプレート地獄に堕ちた、みたいな。 Cよりは簡単だと思うけどな
Cはいちいち「そんなのわかりきってるだろ」みたいなことまでつらつら書かないといけないのに
C++は簡明に書けるし
学生時代にCのレポート書いてるときにめんどくさくなって、楽だからって勝手にC++で書いてたら、しばらく担当教が授気づかなかったな
すっかりCの仕様忘れてしまった。
CよりC++の方がずっとわかりやすくない? 書くのは楽でも読む方は苦痛ってプログラムになってそう。 list実装してこいって課題でstd::list使うマンやってたなーw ラムダでつまづきました。
どこかよいサイトか書籍ありませんか? >>540
「ラムダ式 C++入門」っていうサイトが分かりやすいよ。 自分で書ける程度にはなったが
読める程度には至らない。
知らない機能、文法が多すぎる。
入出力イテレータなんて使った試しがない。
STL難しすぎ。 C++ほど機能が煩雑な言語って他にあるのか?
テンプレートやスマートポインタのような基本的機能もそうだが、
戻り値の型に依存した例外処理、引数の参照渡し、new()との相性の悪い*なしクラス型など、
後発の言語が採用しなかった一貫性の無い仕様や、
#defineマクロ、グローバルstaticやヘッダとソースの分離などの70年代の因習をそのまま残しており、
しかもC時代に由来するmalloc/free、typedef struct、グローバル関数などをそのまま使う人が多い。
標準ライブラリにもstdio/iostreamのような重複が全体に生じている。
それに加え、ラムダ式やジェネリック、右辺値参照、constexprなどの機能拡張も進んでいる。
STLやBoostなどのライブラリも加えればきりがない。
そのくせまともなガベージコレクションはない。
実際のプログラミングではコーディング規約で一貫したルールを定め、余計な機能は使わないようにするのが普通だが、
やはり現代的な言語に比べるとずいぶん使いづらい。組み込み用途、DLLやドライバの開発以外では用いるべきではないのかも。 スマホでマイクラがサクサク動くような時代にGC積んでない言語って正直厳しいと思うの…
それに組み込み系でも別にc++なんて使わなくてもcで足りるし
でもGCを積んだら積んだでc++の存在意義が薄くなるしそれなら他選ぶよってなるわ
objective-cとswiftみたいに代替言語でてくるかもしれんし(使った事無いけど)
結局所詮道具なんだからシンプルで扱いやすいほうがいいに決まってるんだよなー
c++erの行き着く先はスパゲッティ職人っすかね C/C++ は低級が売り
これ以上複雑にしなくていい GCなんて余計管理が困難になる気がする。
GCは不要。 objective-cは{}じゃなくて@を強制されてひたすら読みづらいし構文がクソきもいけど
そこらへんをc++かjavaに近づけて
appleじゃなくてWindows(とLinux)が採用してればobjective-c使ってたわ
どうしてもCocoaかiOS周りにしか使えないからクソなんだよなぁ
まあそれでもcのライブラリが潤沢だから使おうと思えば使えるけど
言語自体はシンプルだから、実質apple専用ってのが残念だわ
一応WinObj-CがあったりGNUstepがあるのはしってるけどmacosと同等につかえるわけじゃなし
swift完全移項して空気になってしまうなら悲しいなー 高級言語は高級側を目指せばいいけど、CやC++は低級を保ってほしい >>548
そういうとこにすら表れてるよな
物事を複雑にして喜んでるようなスジの悪さが
あんなクソみたいな表記のラムダ式持ち込んで一体何がしたいんや(笑)
右辺値参照(笑)ムーブコンストラクタ(笑)型推論(笑) >>553
それみんなコードが簡潔になる機能じゃん。 548 :デフォルトの名無しさん [sage] :2017/06/19(月) 09:36:34.36 ID:S/5ZPkdK
C/C++ は低級が売り
これ以上複雑にしなくていい 仕様が複雑だから理解できない、っていうのをdisる理由にされてもな。
コードが簡潔になる事が重要。 コードが簡潔になることを最重要項目としてほしくない、CやC++の役目はそうじゃない
という主張
アセンブラとの親和性、非常に低レベルな環境への対応、命令レベルの速度チューニング、...
そういう低級言語としての役目が重要であると >>557
C++ の時点で「アセンブラとの親和性」とかあり得ないんだが‥ メジャーなコンパイラですら規格に対応しきれてないのにさらに仕様を増やすとか、規格自体が目的になってる感じで
私自信は規格書も読んだり、積極的に新規格についていってるつもり >>558
C++とアセンブラの混合コード、よく書くけど >>560
それは extern C なんでしょ? 別に低レベル性を犠牲にしているわけでは無いのだからデメリットは無いでしょ
機能追加で便利になってるのに、何が複雑なのかわからん
仕様が理解できないって意味で複雑って言う主張なら、使うなとしか c++至上主義者達は難解なパズルを解いてエレガントにプログラムすることが全てで
可読性とかそういう他人のこと考えてないとこないですかね・・・?
追加する仕様の方向性もまさにこういうとこが見受けられるから文句も言いたくもなるわ〜
別にc++つかっててもできるだけシンプルに見やすいようコーディングしてる人は好きよー C++はF1マシンみたいなもん
ちょっと近所に買い物するのにわざわざF1マシン乗りたくないし
しかもC++は速いけど脆いマクラーレンかな?
pythonとかjavaが人気なのは
上質なリクライニングシートにクーラーとカーナビもついてるからなんだよなぁ プログラムは、小さくて速いのがいい。エレガント、可読性なんて二の次だ ■ このスレッドは過去ログ倉庫に格納されています