アカウント名:
パスワード:
C++とかJAVAとかを学ぶ、というのは、言語仕様・文法を学ぶことに加えて、それに付随する膨大なライブラリの使い方を学ぶ、ということを含んでるよね。
C# や Java ならともかく、C++ の場合は膨大なライブラリの使い方というよりも、無限の可能性を秘めたテンプレートの使い方こそが肝で、この部分をマスターできるという人は世界的にもトップクラスの C++ 使いだと言えると思いますよ。
C++ をマスターするとか、幻想過ぎて困る。
中身が switch だけのテンプレートを利用したインライン関数でテンプレートへのパラメータが定数の場合、分岐で switch (3) とかになるようにすると、case 3: 以外はすべて通らないコードになるので「コード自体は他の状況にも対応している」が「コンパイルされるコードは必要最低限」で、「生成されるバイナリはインライン展開された上に switch 部分がコンパイラの最適化で消える」コードとか、目から鱗というか唖然としたというか……。
# Java/C# の Generic はよくできているけど、C++ template 使いにはおもちゃにしか見えない。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲは一日にしてならず -- アレゲ研究家
そもそものハナシですが (スコア:2, おもしろおかしい)
どちらか一方だけでもマスターできるかどうか怪しいのに
この上さらに新しい言語を学ぼうなんて大それた事は考えてもいませんでしたよ
私が無能なだけ?
Re:そもそものハナシですが (スコア:2, 興味深い)
他の言語もそう言ったスタンスで学ぶと、無理が出てくる。
そうでなくて、言語仕様や文法のみ、あるいはそれに加えてごく基本的なライブラリの使い方だけを学ぶ、というスタンスでも、「プログラミング自体に対する理解を深める」ことになら十分役立つと思うよ。
Re:そもそものハナシですが (スコア:1)
C# や Java ならともかく、C++ の場合は膨大なライブラリの使い方というよりも、無限の可能性を秘めたテンプレートの使い方こそが肝で、この部分をマスターできるという人は世界的にもトップクラスの C++ 使いだと言えると思いますよ。
C++ をマスターするとか、幻想過ぎて困る。
中身が switch だけのテンプレートを利用したインライン関数でテンプレートへのパラメータが定数の場合、分岐で switch (3) とかになるようにすると、case 3: 以外はすべて通らないコードになるので「コード自体は他の状況にも対応している」が「コンパイルされるコードは必要最低限」で、「生成されるバイナリはインライン展開された上に switch 部分がコンパイラの最適化で消える」コードとか、目から鱗というか唖然としたというか……。
# Java/C# の Generic はよくできているけど、C++ template 使いにはおもちゃにしか見えない。