08/05/17 17:08:30
>>100
実行時ポリモーフィズムが必要な場合はどうするの。
102:デフォルトの名無しさん
08/05/17 17:10:55
だから極力控えて、って・・・。
103:デフォルトの名無しさん
08/05/17 17:31:36
静的な方が安全というのは分かるが、
export のない C++ でジェネリックばっかやってると
コンパイルが重くて現実的じゃない事も。
104:デフォルトの名無しさん
08/05/17 21:16:08
>>98
そしてそのツールでチェックするのをつい忘れるわけですね、わかります。
105:デフォルトの名無しさん
08/05/17 22:34:11
>>104
make使うならMakefileに組み込めばおk。
総合環境なら・・・ カスタムビルドステップ?
106:デフォルトの名無しさん
08/05/17 22:42:35
>>104
最悪、考え方としてはおかしくなったときにチェックすればいいわけだし。
107:デフォルトの名無しさん
08/05/17 23:08:54
あれ?ちょっとずれるが
なんかの統合環境で、virtualな関数をオーバーライドする時にvirtualつけておかないとワーニング出すって設定できたよな?
これはvirtualですよー、わかってますかー?って意味合いで
108:デフォルトの名無しさん
08/05/18 00:36:52
微妙に宣言間違えて、いつの間にか別の仮想関数が作られちゃうのを防ぐ方法ってないかな。
delphiならviryualで新しく作って、overrideでオーバーライドするから間違えたらエラーになるんだがなぁ
109:デフォルトの名無しさん
08/05/18 00:37:37
virtualだな
110:デフォルトの名無しさん
08/05/18 00:41:27
override は最近の言語によく取り入れられているね。
あれはいい仕様だと思う。
111:デフォルトの名無しさん
08/05/18 01:18:54
>>107
それは余計なお世話な気もするな。コーディング規約レベルだと思う。
112:デフォルトの名無しさん
08/05/18 01:25:16
いんや。
仮想関数じゃないつもりで関数追加して泣きを見るのを防止できる。
113:デフォルトの名無しさん
08/05/18 09:07:18
なんにしろON/OFFできりゃいいんだよな
overrideはいい仕様だ
114:デフォルトの名無しさん
08/05/18 11:38:49
Java みたいに問答無用で仮想関数にする言語は
typo で泣くことになる。
115:デフォルトの名無しさん
08/05/18 11:52:39
そうした事もあって、C#では明示的にoverrideする必要になりましたとさ
116:デフォルトの名無しさん
08/05/18 12:19:28
それにならって、javaもoverrideをチェックする
アノテーションが用意されました。
117:デフォルトの名無しさん
08/05/18 13:19:39
そしてC++はほったらかしと。
118:デフォルトの名無しさん
08/05/18 13:30:36
C++ は互換性を異常に気にするからな。
119:デフォルトの名無しさん
08/05/18 13:40:20
override付きのときだけチェックしてくれれば良いんだけどなぁ。その他(virtual付き/何もなし)の時は今まで通りで。
120:デフォルトの名無しさん
08/05/18 13:42:08
それはあんまり override の価値がない気が
121:デフォルトの名無しさん
08/05/18 13:42:41
override が無い時に警告出してくれるならいいけど