C++がわからん😭
■ このスレッドは過去ログ倉庫に格納されています
静的メンバってなんや?
どいうこっちゃ動的もあるんか? クラス←いらない
継承←いらない
テンプレート←いる。覚えろ >>7
今やってるシミュレーションを理解するためには
クラスと継承理解しろって言われたんや😣 >>6
Pythonは課題とかで使ったけど結局あんまわかってないからそこからか🤔 >>11
C++で動いてる数値解析やってるんやけど
構造がわかってないから書き換えしても動かんくて詰んでる😭
内容は流体系や C++に自信ニキに聞きたいんだけどテンプレートって他の言語で言うところのジェネリクス分かってたら何とかなるか? クラス : 有能な型
継承 : クラスを詳細まで進化させる なんかわかりやすいサイトとか
サンプルプログラムとかあったら教えて下さい 部分的で良いからソースコード張ったら説明したるわ
ワイは詳しい 物理シミュレーションでC++ってレアだな
最近はインハウスなら普通matlabかPythonじゃね あー既存プログラムいじってんの?
じゃあ理解しないとアカンな >>14
ジェネリクスはC++20のコンセプトってやつに近いんちゃう?
他の言語全然知らんけど 結構理解できてるんちゃうの
ワイはintやshortの使い分けが分からんで投げ出したわ >>21
見たら記法(requiresのとこ)気持ち悪いんやがC++やってる人は慣れるんか >>26
もっとクッソ気持ち悪いテンプレートに慣れとるからむしろ書きやすすぎておもんないくらいや >>19
id変わって1やけど
具体的にはopenformや >>25
テンプレートって言うからもっとアレなやつかと思ったら初心者のやつやんけ
これは簡単やぞ 型を抽象化してるわけではないな
テンプレートは型を引数として受け取るもんと考えたらええ
コンパイル時にTの部分をdoubleに置き換える計算をしてるだけやで テンプレートはコンパイル時引数ってのがしっくりくるわ
非型テンプレートとかまさに >>25
やっぱし分類やんけ
引数の型ごとに似たようなコード書くのマンドクセ コピペもマンドクセ
↓ だったらどうするの?
とりあえず「T」とかいうざっくりした型を設定しておいて
利用する際に、その「T」は実は倍数型でして〜とか注釈付けるみたいにして利用すると
無駄なことしなくて人生が捗るよね?って書き方じゃん Zig言語触ってみるか?
Zigも似たようなもんやけどテンプレートも普通の変数として使える
変数宣言の頭にcomptimeと書くから意味が分かりやすいわな >>25
型が違うだけ(int型やfloat型など)で計算の中身が同じものをそれぞれの型だけ関数のオーバーロードを用意するかわりにテンプレートを使った関数1つだけで表す手法や 「書きたくない!」っていう強い感情があって
プログラミング言語は発達しているような気がする
打ち込みたくないけどコンピューター動かしたい!っていう >>33
型に関係なくデータを扱えるようにするものってことか? >>40
そういうことや
その方が便利な事が多いからな >>36
>>38
型が違うものを簡単に記法するためのものってことか
サンガツ 残念ながらPythonは猫も杓子もで単価が下がったって事か またスレ立てるかもしれんけど
一つ疑問が解消されたわ
みんなサンガツ >>40
大体あってる
例えば
average<double>
average<float>
みたいな感じで2種類の型で関数を呼び出すとするやろ?
コンパイラはtemplate <typename T> T average(...) {...}の宣言を見て、Tの部分をそれぞれdouble, floatで置き換えた宣言のコピーを作る
double average(...) {... }
float average(...) {... }
上2つの関数定義をコンパイル時にやるんや templateでの置き換えの失敗はエラーではない
このテクニック考えたやつ誰なん?
アホやろ 実際に業務でテンプレート使うこととかあるの?
組み込みだとROM削減に役立ちそうだけど、そもそもCが主流だしなぁ 配列使わずにvectorなりvalarrayあたり使えばテンプレートの仕組み理解できるかもな
デバッガで結構掘れるやろあれ >>38
暗黙的に変換してるってこれのおかげなん? >>52
ゲーム業界の募集だとテンプレートメタプログラミングの理解は必須なところが多い印象があるわ ゲーム業界といっても色々あるか
C++使ってるAAAタイトル企業やな >>52
ワイ疑問なんやけどC++でSTL使って書くようになったらもうCには戻れんくない?
なんであいつらCで書けるんや? >>2
あとでなおすときに簡単にするために
似たような機能をまとめる構造にすることだよ テンプレートって要はちょっと拡張された関数やろ
関数がわかれば余裕やん >>10
新しいクラスを作る
↓
定義のとこに元のクラスを入れる
↓
継承 C++でテンプレートの訳分からん技法を学ぶくらいならLispマクロの勉強したほうがええやろ感はある >>66
結局言語そのものより書いてる人間次第やで
ちゃんと人に見られる事を意識してるなら人のコードなら分かるしそうじゃないなら分からん Cにもvoid *型てのがあってな
作ってる本人はどっちでもいいけど見るほうは地獄に落ちたりする ■ このスレッドは過去ログ倉庫に格納されています