- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
664 :デフォルトの名無しさん[sage]:2016/10/02(日) 00:31:44.31 ID:jkLbSgMw - デリゲートはクラスじゃないから無理でしょうね
c#は関数呼び出し演算子()のオーバーロードもできないからクラスで実装するのも無理 c++なら出来るんだがね
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
667 :デフォルトの名無しさん[sage]:2016/10/02(日) 10:05:52.02 ID:jkLbSgMw - 個人的には別にトリッキーだとは思わないけど
むしろ美しい https://ideone.com/N9aycD
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
673 :デフォルトの名無しさん[sage]:2016/10/02(日) 12:42:14.69 ID:jkLbSgMw - オレオレ記法じゃなくて数学的な記法をプログラムに持ち込んだだけなんだけどね
後バグがあるならやめてほしいと言うけど特にc++規格に明示されてない文法を使ってるってわけでもないし 関数オブジェクトとか(この場合可変長テンプレートとか)を見慣れない人にはトリッキーに見えるだけだと思うな
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
681 :デフォルトの名無しさん[sage]:2016/10/02(日) 13:39:28.09 ID:jkLbSgMw - 関数の合成といえば(f◯g)(t)=f(g(t))だし
「線形結合できる関数」クラスの例で 関数の和といえば(f+g)(t)=f(t)+g(t)だし数学的にこれ以外ないでしょ 合成はc++に◯記号がないから|を代わりにしただけ あとあのコードがまるで「普通」のコードよりもバグを誘発しやすいみたいな言い方してるけどなぜそう思うの? 単に見たことない書き方だからそう思ってるんじゃないの? 数学についても、プログラムについても単に知らない人が拒否反応を起こしたり分かりにくいといっているように感じるんだが
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
684 :デフォルトの名無しさん[sage]:2016/10/02(日) 13:49:48.57 ID:jkLbSgMw - U+2218
http://www.fileformat.info/info/unicode/char/2218/index.htm
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
709 :デフォルトの名無しさん[sage]:2016/10/02(日) 16:53:20.94 ID:jkLbSgMw - 俺は関数オブジェクトを使うのによい例を具体的なコードを示して挙げたつもりなわけだが
その例がクソだというなら同じ題材で「まともなCプログラマ」ならどう書くのか プログラマらしく俺と同じようにideoneにでもコードをあげてほしいよね いいかげんそうしないと利点欠点の議論ができない そもそも彼の言っていることがプログラムで実現できるのかも分からないのが現状だしね
|