C#, C♯, C#相談室 P ..
607:デフォルトの名無しさん
16/09/28 09:05:27.32 ksAc0l/t.net
型付けの強さ弱さを同じって言われて俺びっくりしちゃったよ
608:デフォルトの名無しさん
16/09/28 09:37:17.20 nPlGLTXy.net
>>585
レイアウト変更のもたつきなどの、C#特有のもっさり感がないよ
609:デフォルトの名無しさん
16/09/28 09:47:06.51 JharV+Ri.net
作ったUWPアプリ環境によってインストールできなくて挫折したな
610:デフォルトの名無しさん
16/09/28 11:10:40.15 RDlboUCA.net
Cって静的言語だから型は同じじゃないの?
611:デフォルトの名無しさん
16/09/28 16:45:21.87 wFbSwOZd.net
汎用デリゲートのEventHandlerを使用した場合のメリットについて教えてほしいのですが、これを使用するとデリゲート定義の1行を省けることを超えるメリットはあるのでしょうか?
612:デフォルトの名無しさん
16/09/28 17:43:08.72 t2Y8uX7u.net
>>590
発想が逆立ちしてるよ。
普通は、標準で用意された方法を超えるメリットがないのであれば
あえて独自のデリゲートを使う理由はないと考えるんじゃないの?w
それって車輪の再発明そのものだよねw
613:デフォルトの名無しさん
16/09/28 18:34:02.96 1e7C4OQD.net
いやまて、イベント以外のデリゲートに使おうとしてるのかもしれんぞw
614:デフォルトの名無しさん
16/09/28 18:55:03.29 wFbSwOZd.net
そうか、標準のもので済めばそれを使うのが当然なのか
根本が間違ってた
ありがとう
615:デフォルトの名無しさん
16/09/29 15:45:21.13 GKXbaAQ5.net
>>569
それを汚ないと感じる人と
美しいと感じる人もいるんじゃないか?
616:デフォルトの名無しさん
16/09/29 18:05:53.95 42KzZhvK.net
>>594
void (*signal(int sig, void (*func)(int)))(int);
美しいかどうかは美的感覚の問題だから人それぞれとしか言えないが、
少なくとも俺は上みたいな宣言を見せられたとき、これが何を意味しているのか
瞬時には理解できない。
「汚い」っていうのはそういうことを表現したつもり。
617:デフォルトの名無しさん
16/09/29 19:40:25.50 wDlER99I.net
URLリンク(kmaebashi.com)
これを読んだうえでCのポインタの文法が美しいと感じる奴がいたら逆に凄い
618:デフォルトの名無しさん
16/09/29 19:54:22.23 iqK/HxMj.net
コード見たときにそれが何を指してるのか分かりやすいのはCの方だな
619:デフォルトの名無しさん
16/09/29 20:14:20.56 /kH+f7Ja.net
>>595
ああああああ
なつかしいいいいい
UNIXもしくはLinuxか何かでみたぞおおおおおお
もう絶対こんな仕事に戻りたくないぃいいいいいい
620:デフォルトの名無しさん
16/09/29 20:22:33.12 1Mz/tgYS.net
コードの動作が分かりやすいのはC
コードの意図が分かりやすいのはC#
言語の差というより、コードをマシンへの命令と考えるかプログラマの意図を表現するものと考えるかという意識の違いが大きいと思う
do if (*src != ' ') *(dest++) = *src; while (*(src++));
Cはこういうの平気で書き散らす基地外が多い
621:デフォルトの名無しさん
16/09/29 20:29:29.53 /kH+f7Ja.net
K&Rの時代は終わったんだよ
622:デフォルトの名無しさん
16/09/29 21:34:42.13 IEWEZKBK.net
20年前にFM-TOWNS()でCから入ったが今の時代にガキだったらCだのC++だのは一切触らなかっただろうなーと思う
かといってphpやjavascriptから入るのはアレだしc#最高^^
623:デフォルトの名無しさん
16/09/29 21:37:33.67 o/Z16MWz.net
>>599
いやそのコードはおかしいけどな。多分以下。
while (*src!=0) *dest++ = *src++;
それをキチガイというのは自由だが、Cならこれを読めない奴は馬鹿扱いだよ。
初心者は常に「自分の読めないコードは、コードが悪い」としか言わないのだけど、
実際はその初心者の技術レベルに問題がある場合の方が多い。
599はこれだね。
624:デフォルトの名無しさん
16/09/29 21:57:51.11 iqK/HxMj.net
読めないのは馬鹿ってのは同感
そういうのを書き散らすのは基地外ってのも同感
625:デフォルトの名無しさん
16/09/29 22:01:24.13 1Mz/tgYS.net
>>602
いや599はスペースを除去してるんだけどな
正直わざと分かりにくく書いたから602の技術レベルを疑うつもりはないけど、
分かり難さを証明してくれてどうもありがとう
626:デフォルトの名無しさん
16/09/29 22:02:54.74 Js+ntQYt.net
>>602
完全にスレ違いだけど、そういう同じポインタを2回手繰ってるのって
コンパイラは最適化してくれるのかな。
っていうか
while ((*dest++ = *src++) != 0);
って書いても読みやすさは変わらないと思うんだけど
627:デフォルトの名無しさん
16/09/29 22:05:00.53 Js+ntQYt.net
ああ、0コピーしたらダメな場合は使えないのかw
ボケてるな
628:デフォルトの名無しさん
16/09/29 22:37:37.49 o/Z16MWz.net
>>604
ああよく見ればそうだな。てかスペース見えんかった。
俺はプログラミングは固定ピッチフォントでやる派なので。
つか脱線でさらにスレチだがC++の開祖がプロポーショナル派で、
「プログラミング言語C++」もそれで印刷されているのだが、読みにくくてかなわん。
>>605
俺は余り詳しくないのだが、その範囲で話をすると、
K&R第2版P129には、そういう場合は
while (*dst++ = *src++)
にしろと書いてあるわけだが、実際はこの書き方はwarinigが出る環境の方が多いと思う。
したがっておそらく最適化はやってもらえる(はず。volataileでない限り。)
>>595も本来はtypedefやマクロを使えばもっと綺麗に書けるし、多分それが普通。
悪い例を出しても言語間の比較にはならないよ。
どの言語でも糞な書き方は出来るから。(比較的C#はそうなりにくいのは認めるが)
629:デフォルトの名無しさん
16/09/29 22:39:05.84 o/Z16MWz.net
>>607
すまんセミコロン抜けてた。
while (*dst++ = *src++);
630:デフォルトの名無しさん
16/09/29 23:01:59.93 AR+VWIbJ.net
なんのスレなんだここ
631:デフォルトの名無しさん
16/09/29 23:05:32.42 URePwP35.net
Swiftでも++は削除されたし、考え方次第なんだよなー
近代的な文法がないCではしょうがないんだろうが
632:デフォルトの名無しさん
16/09/29 23:40:01.94 o/Z16MWz.net
>>610
マジ?と思って調べたら、どうやらそのようだ。つか、Pyshonも無いんかよ。
URLリンク(github.com)
Cとは生まれた時期も目的も異なるからどちらがいいという問題ではないが、
Cで問題だった箇所を一つずつ潰すのも新しい言語のやるべき事だよ。
主張はそこに書いてある。同意するわけではないが、まあそういう見方もあるわなくらいには思う。
ただCは何だかんだで多分生き残る。
あれはほぼアセンブラで、限界までチューニングするにはあの記法が必要だから。
対してC#やSwiftやPythonは生産性/可読性重視だから、
おそらく次の新しい言語が出てきたら取って代わられる。
「近代的」っていうのはそういうこと。時間が経つにつれて「前近代的」になる。
これは近代的言語の宿命だね。
そしてCは「前近代的」でも生き残る価値があるから現存している。
ただ、++で問題を感じたことはないんだけどな。
そこの例に挙げられている
> foo(++a, a++)
をやる奴は死ねでいいけど、
これは引数の評価順を規定してないのが問題で、別問題。
633:デフォルトの名無しさん
16/09/30 00:10:14.41 cU7plTv4.net
Pyshonて何だよ?と思ってggったら、ホントにあるのな。
634:デフォルトの名無しさん
16/09/30 00:22:32.29 WN9yrU4I.net
Cがわかりにくいのって記号が物理的に見にくいだけだろ
概念的な難易度はC#と変わらん
635:デフォルトの名無しさん
16/09/30 00:51:09.49 27JQ5kO2.net
Perl「特に見にくくなんて無いよ」
636:デフォルトの名無しさん
16/09/30 03:34:02.05 gTc+8iAX.net
>>595
調子こいたラムダ式とかもだめだよな!
637:デフォルトの名無しさん
16/09/30 06:37:26.14 4hxo3I+i.net
結局プログラマの能力の問題
現状だと調子こいたラムダ式書ける奴は比較的スキルが高いからコード綺麗だよ
638:デフォルトの名無しさん
16/09/30 06:55:45.86 Y6l190wq.net
c#でウオッチ1には表示されるのですが、
ウオッチ2や3のウインドウにもウオッチさせる方法を教えてください
639:デフォルトの名無しさん
16/09/30 08:30:41.85 2XfoFLHG.net
コードのキレイ汚いは感覚論だから議論しても仕方がない
でもラムダを使ったコードはコードの重複が少なく結合が弱いから誰が扱っても保守しやすいプログラムになるのは確かだね
640:デフォルトの名無しさん
16/09/30 09:34:42.41 2XfoFLHG.net
何より言語やライブラリ、フレームワークがラムダを当たり前の存在として扱っている以上使わないという選択肢はない
キレイ汚いという個人的感情によるワガママは通じないのだ
641:デフォルトの名無しさん
16/09/30 09:50:48.57 XrkqBYg2.net
○○を使ってたら汚いコードになるってことじゃないんだよな
そういうことがわかってないと汚いコードになる
642:デフォルトの名無しさん
16/09/30 10:10:00.28 Ik8fs/0i.net
それより審美眼の足りない奴を蹴り出した方が効果的
643:デフォルトの名無しさん
16/09/30 20:45:54.67 0SPCdJff.net
審美眼でコードを書くやつはプロジェクトから追い出したほうがいいって
20年前から言われてる
K&Rのコードはさんざん批判されてる
ここは20年前のスレか
保守性の高いだれでも理解しやすいコードを書ける奴が優秀
644:デフォルトの名無しさん
16/09/30 23:00:54.25 bXY+Fxkm.net
× > 保守性の高いだれでも理解しやすいコードを書ける奴が優秀
○ 馬鹿な俺でも読めるコードを書ける奴が優秀なことにしたい
K&Rのコードが「汚い」という批判はないと思うが。あれはあれで美しい。
勘違いした馬鹿が闇雲にトリッキーなコードを書いたり、
(今まさに関数型()の奴らが同じ事をやっているが)
或いはタイプミスなのか意図的なのか分かりにくかったりするのが問題なだけ。
これらは色々warning等を出して対応されてきた。もちろん最初からSyntaxErrorならそれでよい。
そして「コードが汚い」ってのは今言っているようなせいぜい10数行の局所区画のことではなく、
もっと大きな上位区画での話だろ。意味不明なクラス構成とか。
というか、10行程度のコードなら多少汚くても読めるし、
正しく抽象化されて階層が分かれていれば、
そういうローレベルコード(何かのメソッド等)は一度読んで動くのが分かればそれでおしまいだろ。
問題はそれらを駆使するミドルレベルコードがグダグダな方だと思うし、
それを「コードが汚い」と表現するのだと思うが。
645:デフォルトの名無しさん
16/09/30 23:01:33.75 bXY+Fxkm.net
というか多分お前らは「自分が読めるコードが綺麗なコード」とする初心者に近い奴が多いのだと思うが、
実際の所、腕のいい奴は「書ける範囲で綺麗なコード」にしているわけで、
結果的に綺麗なだけなコードならいくらでも綺麗にかけるし、
高速化が必要なら多少汚くなっても最適化を施していく。
だから「汚い」と批判するのはそれ以上の物を自分で記述できるときだけにした方がいい。
K&Rに関しては実行速度/リソースについて最適化を施されているわけだから、
それよりも少ないリソースで速く動くソースが書けないのなら、「汚い」とは言うべきではない。
それが読めないのはお前が馬鹿だから。
少なくともそれを書いた奴はお前よりも腕前は上なわけで、
お前でも読めるようなコードを彼等が書くことは可能なわけだし。
例えばソートとか。
APIとして呼ぶ分には中身がどうであれ正しく速く動いてくれればそれでよし。
それが非常に読みにくい物でも、正しく動く限り、速い方が選ばれる。
それを読み
646:ノくいだけの理由で「汚い」とするのはナンセンスでしょ。 K&Rのトリッキーなコードは本来はこういう区画にしか現れないものだよ。 そしてそれは「ソート」として分離されるから、その中身がどんなに汚くても、開発の障害にはならない。 「コードが汚い」ってのは、つまり「これじゃあ今後手を付けられません」って意味だろ。 ソートみたいな局所区画でこれがあてはまることはない。 (実際「汚い」=「読みにくい」のと、 「コードが汚い」との批判=「開発の障害になる」との意見は別物のはず) 問題は、例えば、「ラムダを使うべき場所でラムダを使ってない」とか、逆に、 「ラムダを使うべきでない場所でラムダを使っている」とか、だろ。 要するに簡単な方を使えばいいだけなのだけど、 意識高い奴は「○○の方がいい(キリッ」とか言って無理に使うからおかしな事になる。
647:デフォルトの名無しさん
16/09/30 23:05:31.58 GrCnAQwz.net
ポエマーきもっ、まで読んだ。
648:デフォルトの名無しさん
16/09/30 23:08:03.45 Fmt1sBQd.net
コードだけでなく2chレスも読みにくいわw
649:デフォルトの名無しさん
16/09/30 23:08:46.30 IoizK4x5.net
もちろん昔と同じように考える分野もあるけど、多くの場面じゃ昔と今は考え方が違うのよ
650:デフォルトの名無しさん
16/09/30 23:10:25.66 GrCnAQwz.net
っていうか、説明的な文章を簡潔かつ過不足なく書く能力と
可読的なコードを書く能力はおそらく無関係じゃないと思う
何が言いたいかはお察しくださいw
651:デフォルトの名無しさん
16/09/30 23:13:28.59 EbLE8W48.net
・ソースが汚いとはクラス構成が変などの大きな区間の事であり10行程度なら問題ない
・多少汚くても速い方がいい
・新機能を無理に使うと汚くなるからやめろ
でおk?
652:デフォルトの名無しさん
16/09/30 23:15:30.37 OobEUz+z.net
むしろこんなに書き込めるんだな
あれか?最新に出てくる画面に1レスだけで全部埋めたりできるのか?
653:デフォルトの名無しさん
16/09/30 23:28:51.36 IoizK4x5.net
>>629
行数の問題じゃない。1行でも汚いのはあるし、変数名一つとっても汚らしいのがある
今は遅くても可読性、拡張性、保守性を重んじるケースの方が多い
新機能は汚いわけじゃない。互換性とかそれまで認知されてなかったトラブルを産む原因になるだけ
654:デフォルトの名無しさん
16/09/30 23:41:02.45 bXY+Fxkm.net
>>629
・「ソースが汚い」と批判される場合は
全体的にナンセンスか必要のない箇所で最適化をしている場合。
必要な箇所での最適化で結果的に著しく可読性が落ちたとしても
「ソースが汚い」と批判されることはない。
・速さが必要ない箇所では最適化せずに、一番単純な記述にしろ。
・新機能は便利だから追加されたのだから、積極的に使えばいい。
ただし使えばいいって物ではない。
655:デフォルトの名無しさん
16/09/30 23:44:22.04 Mpnnp+Nc.net
仕様上どうしても実行速度が必要な部分を除いては、可読性の高さは実行速度より優先されるべき
656:デフォルトの名無しさん
16/09/30 23:56:07.59 bXY+Fxkm.net
>>633
同意。
なんか早すぎる最適化はうんたんってのがあるんだろ。
コードの9割以上は速度はどうでもいい箇所なので、可読性をとるべき。
糞どうでもいい箇所をこねくり回してワケワカメなコードにする奴はハゲろ。
(言っちゃあ悪いが関数型()な奴はこれをやっている気がものすごくする)
あと言語のポリシーにもよるでしょ。
C#はC程のチューニングをする為の言語じゃない。
それこそ、C#なら全箇所で(速度は全く気にせず)可読性重視というのもありだと思うよ。
そもそもどうしても速度が必要ならCでDLL書いた方が速いし早い。
657:デフォルトの名無しさん
16/10/01 01:11:38.55 TCy40dPy.net
コードの綺麗さは実は定量化できる
わかりやすいので言えば重複するコードがどれぐらいあるかとかな
658:デフォルトの名無しさん
16/10/01 01:26:55.75 5I4x+GEM.net
関数型は親の仇、まで読んだ。
いつの間にか老害になってた、ってのもよくある話。
659:デフォルトの名無しさん
16/10/01 02:28:35.54 tNbhSEQ7.net
>>623,624の可読性は定量的に表すといくつですか?
660:デフォルトの名無しさん
16/10/01 02:48:45.62 MIaIeT8n.net
3
661:デフォルトの名無しさん
16/10/01 04:34:25.08 Cx/cD9Km.net
評価に価しない
662:デフォルトの名無しさん
16/10/01 07:03:52.26 aUiPvlDm.net
要するにアンチパターン
663:デフォルトの名無しさん
16/10/01 13:30:51.56 b8SZy0Th.net
>>623
コードに審美眼とかうるさい奴は死にかけのPerlに行けよ
死ぬ程美しいコードだらけだぞ
副作用だらけの可読性や保守性が全然ない糞みたいな世界にいけばいい
664:デフォルトの名無しさん
16/10/01 17:32:33.06 YSehcX6B.net
>>615
調子こいたラムダ式ってどの程度のものを指していますか?具体例を教えて下さい。
665:デフォルトの名無しさん
16/10/01 17:44:54.07 uFiZxscE.net
たぶん「調子こいた『ラムダ式』」では。
666:デフォルトの名無しさん
16/10/01 17:45:58.08 j4WTV/sN.net
ラムダ式の中でも特に調子こいてる物、って事でなくて
ラムダ式自体が調子こいた代物だ、って事かい
667:デフォルトの名無しさん
16/10/01 17:49:57.84 oe6ViUtA.net
匿名メソッドはOKなんですねよかった
668:デフォルトの名無しさん
16/10/01 17:53:16.74 aSQFFfFE.net
>>644
ひでーww
669:デフォルトの名無しさん
16/10/01 18:08:55.65 j4WTV/sN.net
俺の意見じゃなく、>>643を噛み砕いただけだからね
まあ俺も酷いと思うわw
670:デフォルトの名無しさん
16/10/01 18:13:22.35 r6T55aIp.net
ラムダ式「今夜はザキンでシースーよ」
ということですね
671:デフォルトの名無しさん
16/10/01 18:27:04.12 uFiZxscE.net
ザンギにソース?(北海道民感)
>>647
その言い方だと俺が酷いようにみえるんだけどw
672:デフォルトの名無しさん
16/10/01 18:27:22.17 73eR6yvK.net
牛乳を買ってきて卵があったら6個買ってきてね
これで牛乳を6個買ってきた話のようだ。プログラマーってのはめんどくせーなw
673:デフォルトの名無しさん
16/10/01 18:36:06.66 uFiZxscE.net
それは解釈の違いの問題じゃなく、
単なる勘違いというか記憶ミスの話じゃないのか
674:デフォルトの名無しさん
16/10/01 18:47:50.99 MIaIeT8n.net
変なパーサー使ってるんだな
675:デフォルトの名無しさん
16/10/01 19:02:47.22 hMWB8YVJ.net
最後の買ってはコンパイルエラーにしてほしいな
676:デフォルトの名無しさん
16/10/01 20:25:31.09 YSehcX6B.net
ラムダ式使うと調子こいてるヤツと思われるのはit業界の常識ですか?
677:デフォルトの名無しさん
16/10/01 20:27:03.31 R05VqS28.net
>>654
うんにゃ
678:デフォルトの名無しさん
16/10/01 20:34:55.43 roKi/w2g.net
コードの流れに唐突にラムダ式入ってくると邪魔だなって思う
長い奴はメソッドにしてにラムダ式で呼べって思う
679:デフォルトの名無しさん
16/10/01 20:35:59.82 rH9xy5Nb.net
>>654
イテレーター業界?
680:デフォルトの名無しさん
16/10/01 20:38:04.48 roKi/w2g.net
メソッド書かないで引数内で追加できてよかったと思う人もいるんだろうか?
681:デフォルトの名無しさん
16/10/01 20:41:46.11 rH9xy5Nb.net
ラムダ式なしでWhere()とかSelect()使うの苦痛だわw
682:デフォルトの名無しさん
16/10/01 20:44:48.07 wmtSdepv.net
>>650
それとぃってrで見た
683:デフォルトの名無しさん
16/10/01 20:52:06.40 roKi/w2g.net
>>659
そういうのは調子乗ってると思わないけどw
684:デフォルトの名無しさん
16/10/01 22:32:32.05 uFiZxscE.net
普通にメソッド書いたほうが見通しスッキリするんじゃねー?
と思うコードはある、かな……
685:デフォルトの名無しさん
16/10/02 00:04:13.32 ROqN57Sm.net
delegateの演算子オーバーロードは出来ない?
例えば
Func<string, int> f1 f2
な時に
f = f1 | f2;
stringの値によって、f1またはf2を呼び出すfをつくる
みたいな事がしたい。
686:デフォルトの名無しさん
16/10/02 00:31:44.31 jkLbSgMw.net
デリゲートはクラスじゃないから無理でしょうね
c#は関数呼び出し演算子()のオーバーロードもできないからクラスで実装するのも無理
c++なら出来るんだがね
687:デフォルトの名無しさん
16/10/02 04:26:34.74 jWIE31Om.net
トリッキーな脱出条件の再帰コードを見た事がある
見た目はスッキリしてるけどバグを誘発しそうで怖い
688:デフォルトの名無しさん
16/10/02 06:52:07.42 2n6hXS15.net
>>664
そんなトリッキーなことするバカが出ないようにってこと
689:デフォルトの名無しさん
16/10/02 10:05:52.02 jkLbSgMw.net
個人的には別にトリッキーだとは思わないけど
むしろ美しい
URLリンク(ideone.com)
690:デフォルトの名無しさん
16/10/02 10:54:34.82 eq6TYNRH.net
>>667
"個人的"だね、ほんと
691:デフォルトの名無しさん
16/10/02 11:55:26.61 O3UtDhl/.net
個人的だねとの判断も明らかに個人的なものであるが、これいかに
692:デフォルトの名無しさん
16/10/02 12:01:52.13 RfLsthU9.net
>>667
分かりやすくて良いと思う
この辺りをどう感じるかは文理学歴の差が大きいと思う
693:デフォルトの名無しさん
16/10/02 12:07:04.04 aauDOAhV.net
>>667
それって記法上のメリットしかないだろ?
だってベタに書こうと思えば書けるし、大した手間でもない。
だからそういう糞ユーザーの「俺カッケー」を出来なくしてあるのがC#だよ。
inline f
f1(f2(3))
3*f2(3)
3*f1(3)+2*f2(3)
そのコードはテンプレート部(40行目以前)が完全に動くならそれでいい。
ただしそれが保証出来ないのなら、いちいち見ないといけなくなる。
つまり糞ユーザーの「俺カッケー」に付き合わされることになる。
そういうのが開発効率を落とすと判断し、C#は出来なくしてある。
そういうのも含めて全部出来るようにしているのがC++。
C#の判断も一理ある。
694:だから賛同するならC#を使えばいい。 いやならC++を使えばいいだけ。 このケースに関しては、やっていることはOOPスレの10と同じ。 http://echo.2ch.net/test/read.cgi/tech/1467992113/10 便利なことをしているつもりが余計に手間を増やしている。 初心者はこの判断が付かないんだよ。だから1行/1文字でも減らそうとする。 なお俺はその記法について文句を言っているわけではない。 それがシステム側で「バグのない物」として提供されていれば、使えばいい。 ただ、オレオレ記法をしたいだけの為にバグがあるかもしれない物を出されたらウザイだけ。
695:デフォルトの名無しさん
16/10/02 12:25:34.26 OGpfvvty.net
こういう流れを見るとやっぱ文理学歴の差って大きいんだなって実感する
696:デフォルトの名無しさん
16/10/02 12:42:14.69 jkLbSgMw.net
オレオレ記法じゃなくて数学的な記法をプログラムに持ち込んだだけなんだけどね
後バグがあるならやめてほしいと言うけど特にc++規格に明示されてない文法を使ってるってわけでもないし
関数オブジェクトとか(この場合可変長テンプレートとか)を見慣れない人にはトリッキーに見えるだけだと思うな
697:デフォルトの名無しさん
16/10/02 12:52:17.12 +f7TOXbf.net
分かりにくいというか曖昧すぎて理解のしようがない
関数の和や合成と言われても、引数適用や合成の仕方は無数に考えられる
全てがオレオレのフィーリングに基づいた暗黙脳内ルールじゃん
むしろ理系こそ拒否反応起こすわ
698:デフォルトの名無しさん
16/10/02 12:54:43.75 I2UZY42b.net
そう言うことを頻繁にやるならアリだと思うが過去そう言うことをやったことない俺にはできてもできなくてもあまり変わらん
バグまで持ち出して反論してる >>671 はちょっと頭弱い子だと思う
699:デフォルトの名無しさん
16/10/02 12:57:57.60 aauDOAhV.net
>>673
数学の合成関数は f(g(x)) だろ。アホなのか?
700:デフォルトの名無しさん
16/10/02 13:07:15.54 aauDOAhV.net
>>673
なお俺はトリッキーだとは言ってない。
バグを誘発する糞コードを読まされる手間が増えるだけだからウザイと言っている。
その件に関してはベタで書いた方が「全体的には」楽だろ。それだけ。
初心者はこの「全体的」が分からないから局所的な最適化コードに異様にこだわるだけ。
それだけで済んでいればいいけど、通常はそれだけじゃ済まないんだよ。
そして泥沼化するから、C#では最初から禁止している。それだけ。
まあ妥当だと思うよ。
701:デフォルトの名無しさん
16/10/02 13:08:59.70 FGg7v3h+.net
まあラムダがあれば簡単な関数合成する上で特に不便はないな
C++はラムダがない時代が長かったからオペレーターオーバーロードなどを駆使して表記の簡略化、統一化を考える必要があった
702:デフォルトの名無しさん
16/10/02 13:17:42.00 +f7TOXbf.net
演算子オーバーロードの濫用の問題は、全く一般的でないオレオレルールが+などの非常に一般的な表現でコードに撒き散らされることだよ
少なくとも俺には f=f1+f2 と書かれても何のことかさっぱり分からん
うまいこと空気読んで共感してあげるという高度な文系的センスが求められる
703:デフォルトの名無しさん
16/10/02 13:34:10.10 aauDOAhV.net
ちなみにC#からの見方に変えると、
C#の開発時には既にC++があったわけだから、
templateの有効性や演算子オーバーロードの利便性を知らなかったわけではない。
ただ、馬鹿が調子こいて余計に手間が増えることの方が多いと判断したから、落とした。それだけ。
「出来る」ことと「便利になる」は別なんだよ。だから結局の所プログラマ次第。
そして「自前クラス」まで禁止するとstaticおじさんになるというわけさ。
これについてはJava側からの視点で批判的な物が多いけど、
おかしなクラス構成ばかり見せられたら自前クラスも禁止したくなるだろ。
実際、OOPスレ10に対してなら
「お前がクラスを作ることは禁止、どうしても欲しければ相談しろ」というのも現実的な線だよ。
要するにメタプログラミング系は本来は熟練者しか使っちゃいけないのさ。
初心者が「template使える俺カッケー」をするからおかしな事になる。
それってtemplateを使うこと、或いは短く書くことが目的になってるだろ。
手間を減らすこと、コンパクトに書いて規模の限界を緩和することを目的にしろって事だよ。
(クラスも程度は軽いけど結果的に自前フレームワークを用意するという点でメタプログラミングと似ている)
704:デフォルトの名無しさん
16/10/02 13:39:28.09 jkLbSgMw.net
関数の合成といえば(f◯g)(t)=f(g(t))だし
「線形結合できる関数」クラスの例で
関数の和といえば(f+g)(t)=f(t)+g(t)だし数学的にこれ以外ないでしょ
合成はc++に◯記号がないから|を代わりにしただけ
あとあのコードがまるで「普通」のコードよりもバグを誘発しやすいみたいな言い方してるけどなぜそう思うの?
単に見たことない書き方だからそう思ってるんじゃないの?
数学についても、プログラムについても単に知らない人が拒否反応を起こしたり分かりにくいといっているように感じるんだが
705:デフォルトの名無しさん
16/10/02 13:41:46.38 aauDOAhV.net
>>681
てかお前数学知らないだろ?
○って何?ドットなら関数内積で、合成関数ではないぞ。
706:デフォルトの名無しさん
16/10/02 13:43:56.45 aauDOAhV.net
あ、2chで表示できないのだろうからunicodeで頼むわ。
707:デフォルトの名無しさん
16/10/02 13:49:48.57 jkLbSgMw.net
U+2218
URLリンク(www.fileformat.info)
708:デフォルトの名無しさん
16/10/02 13:56:01.58 Tg5OdweU.net
コードの細かい記述方法であれこれルール作りたがるとかチラ裏でやってほしいわ
他人から見たら全く役に立たない
709:デフォルトの名無しさん
16/10/02 14:03:39.03 aauDOAhV.net
>>684
ああこちらでも確認した。そういう表記をすることもあるようだ。
俺は知らんが。
ただ、そういうのを | で代用するようなことをするから演算子オーバーロードは駄目なんだよ。
それが欲しければ、そのコードをそのまま使わないといけない。
そうじゃないと、お前のオレオレクソコードを全員が読まないといけなくなるだろ。
例えばJavaScriptなら、ソースコードはunicodeなのでそれが出来る。
function ○(func0, func1){}
だからその件に関する正しいやり方は、unicode版C++で○を演算子としてサポートすることだ。
ただ、f(g(x))と書けばいいだけのことを新しい演算子を定義するのは無駄だ。
だから現実的にはunicode版C++で○をマクロ等で合成関数に置換することだろう。
(unicode版C++があるかどうかは知らん)
710:デフォルトの名無しさん
16/10/02 14:04:19.38 FGg7v3h+.net
>>680
cppからcsへの変遷の際に危険だが柔軟性の高い機能が取り除かれた理由は、調子こいたバカが増えるからではなく、基本的なスキルのないプログラマが使うことを前提にしたってだけだろう
上で出た関数合成の例だってまともに仕事してるcppプログラマならなんの苦もなくよめる
おや、数値型以外の型に+演算子が定義されているぞ
ああ、オーバーロードしたのね
まっ、文脈から関数合成で、よほどひねくれてなきゃ線形結合だろう
いちお、確認するか…仕様書は…ない
ならソースみよか…(10秒ほど定義を眺める)…うん、さっきの解釈で良いみたいだね
よし、じゃあ楽に見やすくなるならガンガン使おう
cppが出来るレベルではこれが普通の反応であって、読めないという泣き言はプロである以上通じない
csだと逆に、Linqとかあたらしいのわたしよくわからないので禁止!といったようにバカがわからないというだけで、自作の便利なライブラリどころか、標準的なライブラリすら使えなくなってしまう
世間的には同じプログラマとして分類されるけど生きる世界が違うんだよ
711:デフォルトの名無しさん
16/10/02 14:06:04.74 ROqN57Sm.net
自己が見慣れないものを、一見汎用性のありそうな
712:ウ知な屁理屈つけて拒否しるのって、老化の始まりなのかな。 自戒の意味も込めて。
713:デフォルトの名無しさん
16/10/02 14:09:00.42 FGg7v3h+.net
>>686
さっきからちょっと気になってたんだが
関数を合成するのと関数の評価を続けて行うのは全く別の処理だぞ
どの記号を使うべきか、そもそもオバロすんなとかいう議論以前の話で間違ってる
714:デフォルトの名無しさん
16/10/02 14:20:35.82 +f7TOXbf.net
>>687
そういう考えは規模が大きくなると破綻する
関数合成をする操作があっちゃいけないとは思わないが、定義を思い出すのに十分なラベルを付けるべき
1,2文字の記号と、離れた場所にある型宣言だけではあまりにもヒントが少なすぎるし、演算子は名前空間が小さすぎる
715:デフォルトの名無しさん
16/10/02 14:25:11.07 aauDOAhV.net
>>687
なんかC++の奴らは「選民思想」を持っているようだけど、それは違うと思うんだよ。
そのコードを書いた時点で、バグがある可能性が残ってしまう。
だから見ないといけない。俺はこれが嫌なんだよ。
コード自体は「打ち間違いがない」という前提でなら10-30秒程度だよ。中身は何もやってないから。
だからそれが既に実績のあるライブラリとして提供されていて、その中身の確認ならまあいい。
ただしそれを自前で書かれたら、詳しく確認しなければならないし、全てに当てる検証も必要になる。
そして得られるメリットはちょっと短く書けるだけ。
これは明らかに手間が増えているだろ。
.NET公式で関数合成の演算子として提供されていれば、それを使うことに問題はない。
仮にバグがあったとしても公式側が修正してくれる。(中身の実装について見る必要がない)
自前で書いたら上記の通り手間が増えるだけ。だったらベタで書いた方がマシ。
基本的にC#は「馬鹿が使う」ではなく「ここら辺まででいいよね」という思想だとおもうし、
その判断自体も割と妥当だとは思う。ちょっと窮屈な点はあるけど、致し方なし。
なお俺はC#派ではなくかなりC寄りのC++派ね。(お前らがbetter-Cと言っている奴)
これとは別に、「馬鹿でも使える言語」として使っている奴もいるし、
そいつらが調子こいているのも事実だけど、それは別問題。
716:デフォルトの名無しさん
16/10/02 14:27:32.07 FGg7v3h+.net
>>690
まあ別に俺も演算子を積極的に推奨するわけじゃないけどな
ちゃんとしたcppプログラマなら標準の型に対する演算子の挙動に準ずる動作で演算子を定義するのが良い習慣だってのが常識として知っているわけだし
717:デフォルトの名無しさん
16/10/02 14:28:49.54 aauDOAhV.net
>>689
関数ポインタを返せばいいだけだろ。
いずれにしてもtemplateは静的展開なんだから、ベタに書けない処理はないだろ。
ベタに書くのがいいか、テンプレートを使うか、
これを検証まで含めた「手間」基準で判断しろというのが俺の意見。
718:デフォルトの名無しさん
16/10/02 14:40:47.92 FGg7v3h+.net
>>691
依存先にバグがあるかも〜とかそんなんでプログラマやっていけるのか?
演算子使おうが使わないが、やりたいことが関数合成だろうが何か別の処理だろうが、プログラミングするなら、関数やメソッドを定義してモジュール化するのは当たり前の事だろう
むしろ同じ処理をモジュール化しないで、同じようなコピペコードを大量生産するほうが圧倒的に悪じゃん?
この悪を突き詰めるとUIのイベントハンドラに全ての処理をぐっちゃぐちゃに詰め込むようなキングオブバカになるんだよ
そんなものは誰も望んでいない
処理の重複があればモジュール化するのが当たり前
モジュールにバグがあるのも当たり前でモジュールの保守をするのも仕事のうちだ
演算子がどうのこうのってレベルじゃねえぞ
719:デフォルトの名無しさん
16/10/02 14:42:08.34 FGg7v3h+.net
>>693
レス番間違ってないか?
720:デフォルトの名無しさん
16/10/02 15:00:21.56 aauDOAhV.net
>>694
お前がそう思うのならそれでいいじゃん。
俺は「手間」がかからない方を選ぶ。それだけ。
関数の線形結合なんて普通のプログラミング(例えばブラウザ等の製作)では不要だろ。
だから俺はそれにオーバーロードなんてしないし、必要ならベタに書く。
普通のプログラミングで、その線形結合って何回使うと思っているの?
余程数学的なことをするのであれば関数の線形結合も必要になるのかもしれないけど、
そういうところは既にライブラリなりフレームワークが用意してあり、
演算子も既にオーバーロード済みだったりすると思うよ。
とはいえ、俺とお前は特に何の関係もないわけで、別にお前がそうすることを止めはしない。
それをOSSとして公開してあれば、「馬鹿がいきがってるな」と思うだけ。
そういう俺に対してお前が「馬鹿だな」と思うのも自由だよ。
そういう意味ではいい時代になったね。
721:デフォルトの名無しさん
16/10/02 15:08:10.02 aauDOAhV.net
>>695
間違ってない。
> 関数を合成する (>>689)
に対して「関数ポインタを返せばいいだけ」
俺が671で
> 関数の評価
つまり値を算出したのが気に入らなかったんだろ?
Cでも「関数ポインタを返す関数」というのは普通に定義出来る。
関数合成ってのは別に難しい話でも新しい話でもない。
722:デフォルトの名無しさん
16/10/02 15:25:03.83 FGg7v3h+.net
>>696
なるほどそっちの認識では線形結合のみかつ再利用の機会も少ないという前提の話題だと思っているのね
関数合成や線形結合はあくまで一例であってもっと一般論的な話をしてるつもりなんだが>>694読んでわかんなかったかな?
723:デフォルトの名無しさん
16/10/02 15:30:13.53 aauDOAhV.net
ああすまん、696はレス相手を勘違いしていた。
>>694向けに再度書き直す。
>>694
それは単にDRYなりOAOOだし、基本中の基本だろ。
今更何を言っているんだ?
俺は無駄なコードを書くなと言っているだけ。
使いもしない演算子オーバーロードのコードとかね。
724:デフォルトの名無しさん
16/10/02 15:36:24.07 FGg7v3h+.net
>>697
わからなくなってきたな
君は関数合成をカスタム演算子を使う方法ではなくf(g(x))と表記出来ると言っている
これは関数合成ではなくg(x)を評価した結果を引数にしてfを評価しているだけであって関数を合成する処理ではないよと返した
さらにその返しとして関数ポインタを使えば良いというよくわからない返事が来たのでレス番間違ってないか?って聞いたの
関数ポインタを使ってf(g(x))の表記でfとgを合成するにはどう書けば良いんだろうね
当然だけど|を使った表記より実装がシンプルになってバグがなくなるんだよね君のポリシーからすると
725:デフォルトの名無しさん
16/10/02 15:41:08.17 aAAtYBE2.net
>いちお、確認するか…仕様書は…ない
>ならソースみよか…(10秒ほど定義を眺める)…うん、さっきの解釈で良いみたいだね
ドキュメントがそろってない場合、実際にはオーバーロード関数の実体を見つけるだけでも
一苦労で、10秒どころじゃ済まなかったりするけどな。
初見のコードだと結局デバッガで追いかけるのが一番早かったということも。
726:デフォルトの名無しさん
16/10/02 15:46:00.43 aauDOAhV.net
>>700
> 関数ポインタを使ってf(g(x))の表記でfとgを合成するにはどう書けば良いんだろうね
それが>>595だろ。
> 関数合成の例だってまともに仕事してるcppプログラマならなんの苦もなくよめる(>>687)
流に言えば、まともに仕事してるCプログラマなら何の苦もなく読める。
> 当然だけど|を使った表記より実装がシンプルになってバグがなくなるんだよね
はい。
上記の通り、君の定義の「まともなCプログラマ」なら一瞬で読めるし、
少なくとも | を使っている時点で他の人と組み合わせたらバグを誘発するからアウトだよ。
727:デフォルトの名無しさん
16/10/02 15:51:44.43 FGg7v3h+.net
>>699
すまない
わかってるならいいんだ
君の書いた線形結合かつ再利用の機会の少ない場合に限定したレスを読んでこっちが勝手に一般的な話に拡大してしまっただけだから
線形結合だけできてもまあ確かにそんなに嬉しくはないよね
Boost.Lambdaみたいなライブラリの一部として組み込まれてるならともかくね
728:デフォルトの名無しさん
16/10/02 15:54:11.92 aauDOAhV.net
>>701
君と俺は反対ではないけども、補足をすると、俺が思うに、
「直感的に見たとおりの演算子/メソッドじゃないとオーバーロードしてはいけない。」
いちいち確認する必要があるのなら、そこにベタで書いてあった方がすぐに辿れていい。
729:デフォルトの名無しさん
16/10/02 15:57:16.07 wePFQlkp.net
捨て台詞吐くぐらいなら絡んでこなきゃいいのに...
730:デフォルトの名無しさん
16/10/02 15:57:23.23 FGg7v3h+.net
>>702
それ合成してないじゃん
関数f,gを合成して名前はなんでも良いけどhを作ろうって話してんの
731:デフォルトの名無しさん
16/10/02 16:10:13.27 aauDOAhV.net
>>703
いや先にIDを読み間違えたのはこちらの方だ。
これは俺が悪かった。
> Boost.Lambda
見てみたが、一覧表がないから使えるものかどうかはよく分からん。
ただ俺はこういうのを使うのは賛成、自前で用意するのは反対。理由は、
・バグがない。あったとしても向こうが勝手に直してくれる。
・「普通」の仕様になっているはず。オレオレ演算子アサインはない。
>>706
「まともなCプログラマ」ならそれも一瞬で書けるって事だよ。
ただし見た目は>>595的になる。それを「汚い」とするかはその人次第。
732:デフォルトの名無しさん
16/10/02 16:28:44.65 FGg7v3h+.net
>>707
すまない
関数ポインタの件がよくわからないのだけどサンプルコードはないだろうか
typedef int (*p_func_t)(int);
とあったときに
p_func_t f = ...;
p_func_t g = ...;
int x;
p_func_t h = f(g(x));
と表記してfとgを合成できるような方法があるってことだよね?
733:デフォルトの名無しさん
16/10/02 16:53:20.94 jkLbSgMw.net
俺は関数オブジェクトを使うのによい例を具体的なコードを示して挙げたつもりなわけだが
その例がクソだというなら同じ題材で「まともなCプログラマ」ならどう書くのか
プログラマらしく俺と同じようにideoneにでもコードをあげてほしいよね
いいかげんそうしないと利点欠点の議論ができない
そもそも彼の言っていることがプログラムで実現できるのかも分からないのが現状だしね
734:デフォルトの名無しさん
16/10/02 17:41:34.45 ROqN57Sm.net
レガシーな話は別の場所で。
735:デフォルトの名無しさん
16/10/02 18:37:00.85 4fupdPv1.net
そろそろc++スレへ
736:デフォルトの名無しさん
16/10/02 20:32:46.30 ruQ48W5a.net
>>682
ちいさな中空の○のことだろ
数学でよ〜く使う奴
737:デフォルトの名無しさん
16/10/02 21:54:50.86 QFl4EKwL.net
f∘g
738:デフォルトの名無しさん
16/10/03 04:19:54.47 uOsaIQNY.net
何時もfまるgって読んでるけど正式な読み方は何なの?
739:デフォルトの名無しさん
16/10/03 06:05:41.66 70nww6OY.net
この手の話題に電話越し実験とかというのがあったと思う
自分の思っている事を電話越しに話すことを想定して、
相手に伝わらない記号や概念が思い当たったら使うなって話
740:デフォルトの名無しさん
16/10/03 07:58:56.85 K13Pj3xV.net
>>714
それで正しいみたい
URLリンク(izumi-math.jp)
URLリンク(www.comp.tmu.ac.jp)
741:デフォルトの名無しさん
16/10/04 10:32:58.48 7zrfyEQB.net
みんなUIフォントを何にしてる?
メイリオがいいよね?メイリオがいいよね?
742:デフォルトの名無しさん
16/10/04 10:34:40.02 reFXN9x4.net
理由がないかぎりデフォのまま
743:デフォルトの名無しさん
16/10/04 10:53:11.92 6+Zayg+b.net
ふらっととマルチとか他人に共感してもらわないと不安になる病気か
744:デフォルトの名無しさん
16/10/04 10:58:30.13 s22xkPru.net
901 名前:デフォルトの名無しさん (アウアウ Sa17-RPp1)[sage] 投稿日:2016/10/04(火) 10:32:30.59 ID:2uMugtE2a
みんなUIフォントを何にしてる?
メイリオがいいよね?メイリオがいいよね?
745:デフォルトの名無しさん
16/10/05 23:55:13.72 +0VoUMKr.net
C#勉強始めたんですが、初心者がだいたいつまづくポイントってどこだと思いますか?
746:デフォルトの名無しさん
16/10/06 00:04:15.38 7nh5q1fN.net
デリゲートかなあ
747:デフォルトの名無しさん
16/10/06 00:15:35.85 4kR5N43K.net
プログラミング経験ないなら参照型と値型で必ず絶望する
経験あるならデリゲートかな
748:デフォルトの名無しさん
16/10/06 00:32:29.25 zO3yIj3z.net
>>722-723
ありがとうございます
今まさにデリケートでハマってます。。
使い方?使いどころ?を共感できないとうやむやでしょうがないです
749:デフォルトの名無しさん
16/10/06 00:39:52.90 rwN2Tml/.net
デリゲートとかめったに使わないコールバックでしか使ったことがないな
代入かと思っていたら参照だったで面倒なことになった事はある
750:デフォルトの名無しさん
16/10/06 00:45:11.41 TGE1GIM6.net
今時は直接delegateで宣言するようなことはなくなったから
概念は知っておいて、ラムダ式と
Action<T>とかFunc<T>の実用例覚えとけばいいんじゃないですかね
751:デフォルトの名無しさん
16/10/06 00:49:47.22 4V0JRI8n.net
GDI+の機能にかなり頼っていていろいろハマったw
>>726
他の人のソースを参考にしようとしてネットで調べているとdelegateは割と見かける
そのときに解釈するのにハマるかもw
752:デフォルトの名無しさん
16/10/06 01:27:48.67 fMQ+lBRM.net
デリゲートとラムダを滅多に使わないって珍しいね
C#1.0とか2.0の現場なのかな
753:デフォルトの名無しさん
16/10/06 01:30:51.44 4V0JRI8n.net
>>728
いやラムダは普通に使うだろうけどdelegateはむしろ古いソースに多いと思うんだけど
そもそもラムダを滅多に使わないってどのレス?
754:デフォルトの名無しさん
16/10/06 01:34:30.42 NXx8nGJH.net
デリゲートもラムダもインタフェースも一切使わないでアプリ作ってる
参照型と値型はList<T>でハマった
あとDispose
755:デフォルトの名無しさん
16/10/06 02:31:28.02 tWbYPS8o.net
デリゲートで思い出したけど、Delegateを取るメソッドにラムダ式を渡す時、
Actionとか適当なデリゲートにキャストする必要があるけど、これ()が増えて読みづらいんだけど
もうちょっと簡潔に書く方法何かないかね
756:デフォルトの名無しさん
16/10/06 06:42:51.70 fMQ+lBRM.net
>>729
ラムダって多くはデリゲートとセットでは?
757:デフォルトの名無しさん
16/10/06 07:20:21.92 n3wSSvrr.net
・匿名メソッド構文
delegate(int x){ return x * 2; }
・delegate typeの定義
delegate string IntToStringFunc(int i);
・定義済みdelegate
EventHandler,Action,Func,Predicate,...etc...
"delegate"キーワードは使わなくなったけど、delegateは使うね。
758:デフォルトの名無しさん
16/10/06 20:52:22.74 /ETy8QFu.net
ラムダ式って拒絶反応が出るんだけどすんなり使えた?
759:デフォルトの名無しさん
16/10/06 20:53:36.20 roCwyFi8.net
使えたよ
760:デフォルトの名無しさん
16/10/06 21:04:12.56 JthKKgNo.net
アレルギーは病気だからお医者に行くといいよ
761:デフォルトの名無しさん
16/10/06 21:55:32.73 Gk0vxqlO.net
>>734
FAQ過ぎる
762:デフォルトの名無しさん
16/10/06 23:09:44.94 M7jvqMaX.net
C#はじめて触った時点でもうラムダ式あったからあって当然だった
763:デフォルトの名無しさん
16/10/07 00:40:13.77 7KQTkYQu.net
俺もJava初めて触った時点でラムダあったし
5ヵ月間存在知らなかったけど
764:デフォルトの名無しさん
16/10/07 01:58:05.78 zqRixoIp.net
リンクトゥーエスキューエルは?
765:デフォルトの名無しさん
16/10/07 08:14:27.52 zPyY2V4X.net
拒否感というか、実際に使うまでは全然に覚えれんかったなあ
Cのポインタとかもそうだった
766:デフォルトの名無しさん
16/10/07 08:39:51.90 m+Df9peK.net
逆になんで拒否反応起こすのか理解できない
知って即座に馴染んで初めのうちは便利すぎてちょっと調子乗って使いすぎちゃいましたってなるだろう
767:デフォルトの名無しさん
16/10/07 08:49:35.73 nw13XKq1.net
同じカテゴリの処理の実装場所が散らかるからな。気持ちはわからないこともない
768:デフォルトの名無しさん
16/10/07 13:02:14.27 gy3H7/nZ.net
別人で再生して浄化した。
769:デフォルトの名無しさん
16/10/07 21:00:51.15 NycpsfVm.net
>>743
> 同じカテゴリの処理の実装場所が散らかるからな。
それは使いどころを間違えてるだけやん
770:デフォルトの名無しさん
16/10/07 21:05:49.22 1Dl+MuXR.net
道具のせいにする人ってどこにでもいるよね
771:デフォルトの名無しさん
16/10/07 21:42:30.53 rpvo0aMN.net
いるね
772:デフォルトの名無しさん
16/10/07 23:53:39.03 1f6Aa5PW.net
そういう方はコボルに移ってもコボルのせいにしない?
773:デフォルトの名無しさん
16/10/08 00:27:37.64 YZ0dkDui.net
極端な人ってどこにでもいるよね
774:デフォルトの名無しさん
16/10/08 10:59:27.20 3B0HEkdw.net
>>742
実際にコードを書かない、コードを書けない、かつ不勉強な人がコードレビューでLINQその他に対して激しい拒否反応を起こしたのは見た事ある。
もちろん、その人にコードレビュー受けた人達は大被害ww
その人は自己が見慣れないコードは全部ケチをつけるタイプなので特殊例かもしれん。
775:デフォルトの名無しさん
16/10/08 17:25:08.15 6UkbCfBv.net
そんなやつがレビューアーやってる事の方が問題なんだが
776:デフォルトの名無しさん
16/10/08 17:28:45.90 siQv9+5e.net
直属の上司とか、1年上の先輩とか
機械的に決まるパターンだと悲しみが起こりそう
777:デフォルトの名無しさん
16/10/08 18:05:11.46 160QOg/G.net
日本の文化と思って諦めるしかない
どうしても嫌なら会社はいくらでもある
778:デフォルトの名無しさん
16/10/08 20:07:07.86 6x1/odTz.net
会社はいくらでもあるが、果たして…
779:デフォルトの名無しさん
16/10/09 03:24:54.85 b4dakfPd.net
会社厨うざい
780:デフォルトの名無しさん
16/10/13 14:08:23.46 iJXxjoio.net
Visual C# には iniファイル読み書きのライブラリはないの?
781:デフォルトの名無しさん
16/10/13 14:23:00.79 x9JSnrTo.net
標準のはない
782:デフォルトの名無しさん
16/10/13 14:36:24.85 U+TNkLbY.net
今時はJSONでも使っとけ
783:デフォルトの名無しさん
16/10/13 15:12:47.08 iJXxjoio.net
>>757-758
ありがとう
なんとかする
784:デフォルトの名無しさん
16/10/13 21:52:42.89 iJXxjoio.net
Visual C# で、フォーム上の適当なところでダブルクリックすると
ロード直前に実行される関数のひな形(Form1_Load)ができるけど
この関数を削除するにはどうしたらいいの?
785:デフォルトの名無しさん
16/10/13 21:55:43.87 mO/7q7RS.net
逆に消してどうしたいの?
786:デフォルトの名無しさん
16/10/13 21:56:14.16 NpjsDOUl.net
>>760
普通にエディタ上で消せばいい。あと表示→プロパティ→イベント()からも消しとけ。
787:デフォルトの名無しさん
16/10/13 22:30:08.59 Qz0gpqw/.net
>>760
直後なら(本当は直後でなくてもだけど)ctrl-Zで消せると思う
788:デフォルトの名無しさん
16/10/14 00:12:51.87 ogHyy/3J.net
作ったままの中身空っぽならプロパティイベントから消したら同時に消えたと思う
789:デフォルトの名無しさん
16/10/14 01:38:37.30 T/Zghmcy.net
コードから消そうとすると
エラーになるんだよね
最初ほんとうにイライラしたわ
790:デフォルトの名無しさん
16/10/14 01:48:21.30 ZVLfa9Nj.net
>>765
ビルドエラーのこと?なったらなったで該当箇所教えてくれるから消せばよくね?
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
2405日前に更新/279 KB
担当:undef