1 名前:デフォルトの名無しさん [2015/09/26(土) 21:43:29.25 ID:Eb5jOjH8.net] ■Visual Studio 2013 Community & Express(無償の統合開発環境)等はこちら www.visualstudio.com/downloads/ ■コードを貼る場合はこちら ideone.com/ ■前スレ C#, C♯, C#相談室 Part88 [転載禁止]©2ch.net peace.2ch.net/test/read.cgi/tech/1437808445/ ■次スレは>>970 が建てる事。 建てられない場合は他を指定する事。
357 名前:デフォルトの名無しさん mailto:sage [2015/11/19(木) 22:28:50.03 ID:tuRe1SPF.net] >>355 うわ、固定長ファイルの読み込みってバイト単位の切り出しがキモじゃん それできない時点でどう考えても使い物にならないわ
358 名前:デフォルトの名無しさん mailto:sage [2015/11/19(木) 23:04:38.15 ID:/GuEQnmn.net] >>353 その略称を考案した奴凄いよな
359 名前:デフォルトの名無しさん mailto:sage [2015/11/20(金) 00:08:07.00 ID:6faEBo3j.net] >>357 DECの人やで https://ja.wikipedia.org/wiki/%E3%83%8C%E3%83%A1%E3%83%AD%E3%83%8B%E3%83%A0
360 名前:デフォルトの名無しさん mailto:sage [2015/11/20(金) 15:02:34.58 ID:4Z48XOb6.net] intDeta
361 名前:デフォルトの名無しさん mailto:sage [2015/11/20(金) 15:47:50.10 ID:50zp9/ge.net] >>353 i18nに該当する別の単語はないのかな? もしあれば混乱しそうだ
362 名前:デフォルトの名無しさん mailto:sage [2015/11/20(金) 20:37:10.79 ID:I81aKI5b.net] 俺のアカウント名はp11a
363 名前:デフォルトの名無しさん mailto:sage [2015/11/20(金) 21:08:06.47 ID:+55qipus.net] ウィーフィーの規格みたいだな!
364 名前:デフォルトの名無しさん mailto:sage [2015/11/20(金) 21:48:08.47 ID:3Hd/TC01.net] >>352 後輩がフラッグと呼んでいるのを訊いて目からうろこだったな。この業界の人はフラグというけど 旗は英語でフラッグと読むのが普通だった
365 名前:デフォルトの名無しさん mailto:sage [2015/11/21(土) 00:03:43.84 ID:vY02tg2U.net] >>363 カエルじゃないんだからフラッグなんて言わないと思うw 普通にチェッカーフラグだしフラグシップだ。
366 名前:デフォルトの名無しさん mailto:sage [2015/11/21(土) 00:27:04.73 ID:LNOlZUw+.net] s1x
367 名前:デフォルトの名無しさん mailto:sage [2015/11/21(土) 00:42:43.76 ID:QnKZX1iR.net] かえるはカタカナ表記だとフロッグが一般的じゃないかなあ チェッカーフラグはぐーぐるさんに「もしかして:チェッカーフラッグ」言われてもうた
368 名前:デフォルトの名無しさん mailto:sage [2015/11/21(土) 00:46:21.16 ID:9hhZMgm3.net] フラグは割とフツーに言う気がするけどな 死亡フラグとか恋愛フラグとか言うやん 最近はローカル変数でもisとかhasとかつけるからflag自体あんまりつかわへんけど
369 名前:デフォルトの名無しさん mailto:sage [2015/11/21(土) 00:56:45.59 ID:QnKZX1iR.net] ああ、いや俺もそれは使うよ フラグとフラッグの使い分けって面白いなと思っただけで他意のない横槍でした どうもboolなフラグはフラッグと呼ばれてない様子 まあゲーマー用語として広まって定着したのかな
370 名前:デフォルトの名無しさん mailto:sage [2015/11/22(日) 20:15:29.76 ID:ZvtPZZWZ.net] まず相手に伝えるための言葉なんだから伝わればいいんだよ ルー大柴みたいに四六時中カタカナ用語を織り混ぜて会話するやついるが気持ち悪いんだよな 心理学ではそれは自信のなさの裏返しで自分を大きく見せたいコンプレックスらしいが、兎に角うざい 素人であるユーザー相手にコンサルする分にはいいかもしれんが、専門職の俺らに通用すると思ってる時点で馬鹿なんだよな
371 名前:デフォルトの名無しさん mailto:sage [2015/11/22(日) 22:55:15.68 ID:DXq6XAe4.net] よくわからん被害妄想だw それこそコンプレックスの産物にしか思えないが自覚がないんだから凄いわw
372 名前:デフォルトの名無しさん [2015/11/24(火) 23:46:40.10 ID:VFqon6vc.net] ファイルを暗号化する手法が結構多く見られていてよくあるのがファイルの先頭にsaltとかIVを 埋め込んでいるのがあるんだけど、メモリストリーム使って文字列を暗号化するときにも バイト配列にsaltとIVをつないで一緒に保存してもいいものなの? 他のサンプルソースのうち、メソッドの頭にIVとか直書きしてるものあるけど、それって危なくないの?
373 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 00:12:27.44 ID:/p4JxLKY.net] まあなんらかの形でIV埋め込まなきゃ解凍できないし
374 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 01:41:28.14 ID:wwtRzQvg.net] ニッポンの平均最低月給と人口の都道府県別、市町村別ランキング 求人情報113,957件の平均最低月給196,400円 ♬ あなたの住む街は第何位?平均最低月給はいくら??? jobinjapan.jp/area/
375 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 10:00:10.90 ID:XX3uU+t0.net] >>372 ありがとう 追加で質問なんだけど、デコードしたあと文字列見るとエンコードするときに埋め込まれたダミーが残って \0が16の倍数の残り分後ろにつくんだけど、特にネットで落ちてるサンプル見るとそれに対する処理が 見受けられないんだけど、単純に暗号化複合化の記述がおかしいのか、 そうなるのが当然で、あとは自分で処理するレベルのものなのでしょうか
376 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 10:16:17.92 ID:5wB+dJF6.net] ダミー?パディングのことだろうか 自分で処理するのが普通
377 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 12:11:57.78 ID:Ma3qeykF.net] PaddingがZerosになってない限り、読み込まれることはないはずだけど CryptoStream::Readの返値見てないとかなら知らん
378 名前:374 mailto:sage [2015/11/25(水) 14:34:31.59 ID:mt/VYpXM.net] レスありがとうございます PaddingはPKCS7にしてます ちなみに CryptoStream Mydecrypt = new CryptoStream(input, decryptor, CryptoStreamMode.Read); Mydecrypt.Read(output, 0, output.Length); としてたあとに output.ToArray()でbyte配列に格納してます Mydecrypt.Readの処理後にoutputにはパディングされた部分に0で入っているので、 それをToArrayすれば当然それも配列に入っているのだと理解してます 暗号化するときにはFlushFinalBlockなりCloseすれば元のデータの終わりがわかるんだと思うのですが、 復号するときにはどこまでが元のデータでどこまでがパディングされたものか、 FlushFinalBlockのような処理は用意されてないんでしょうか それとも>>376 さんのいうようにZerosになってない限り自動で終わりを判別して返してくれるんでしょうか (そうだとしたら、どこかでおかしな記述をしてるんだとは思いますが・・・)
379 名前:デフォルトの名無しさん [2015/11/25(水) 15:36:31.44 ID:eV7P+bdC.net] System.Math.Round(0.5)とかSystem.Math.Round(-0.5)の戻り値が0なんだけど。 何なのこの糞言語。
380 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 15:54:31.31 ID:rHMnfdo0.net] 戻り値 型: System.Double a に最も近い整数。 a の小数部が 2 つの整数 (一方が偶数で、もう一方が奇数) の中間にある場合は、偶数が返されます。 このメソッドは、整数型ではなく Double を返します。 だから仕方ないな Console.WriteLine(Math.Ceiling(0.5) + " " + Math.Floor(-0.5)); 切り上げにはみたいな書き方をする
381 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 16:16:16.65 ID:Ma3qeykF.net] >>377 だからReadの返値だってばさ
382 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 16:23:53.16 ID:tXkV+f/F.net] >>378 のコードはdouble値と小数を==で比較するような糞ロジックで溢れているのだろう
383 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 16:24:13.41 ID:TdJGHa8X.net] >>378 MSDNのMath.Round メソッドのページに書かれてるよ このメソッドの動作は IEEE 規格 754、セクション 4 に従います。 このような丸めは、近似値への丸めまたは銀行型丸めと呼ばれることがあります。 これにより、常に中間値を単一方向に丸めるために発生する丸め誤差が最小限に抑えられます。 Round メソッドが使用する丸めの種類を制御するには、Math.Round(Double, MidpointRounding) オーバーロードを呼び出します。 下みたいに書けばいいんじゃないかな System.Math.Round(0.5, MidpointRounding.AwayFromZero)
384 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 16:28:27.15 ID:2e0lZK3J.net] >>378 dobon.net/vb/dotnet/programing/round.html System.Math.Round(0.5,MidpointRounding.AwayFromZero); って書くんや
385 名前:374 mailto:sage [2015/11/25(水) 16:37:18.69 ID:mt/VYpXM.net] >>380 返値は7でした 0じゃないということは正しく終わりを見てもらえてないってことですよね・・・
386 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 16:57:39.93 ID:FMs/A05F.net] >場合によっては、この丸めのエラーを重要なことができます。 なるほど、この丸めのエラーを重用なことができるのか
387 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 17:21:58.69 ID:vs30+rKr.net] そもそもDoubleの値がぴったり0.5になることなんてリテラル以外まずあり得ないだろ Decimal使えよ
388 名前:374 mailto:sage [2015/11/25(水) 17:32:39.48 ID:mt/VYpXM.net] ちょっとどつぼにはまって訳がわからなくなってきたのですが、 たとえば文字列が 5byte分あったとして、byte配列にしたときに残りの11については パディングされて埋められますよね デバックしていてパディングの後の値を見ると、後の11byteには0ではない値が入っているようでした 0で埋められると思っていたのですが、これはコードがおかしいのか私の理解が間違ってたかどちらでしょうか パディングで埋められたものが、デコード時に元の5byte分が復元されて、 それより後の値は0で埋まって(暗号部分までがしっかり認識区別されて)返ってくるのでしょうか? (すなわち、16の倍数byte分返ってくる) それとも本来は5byte分のみ返ってくるのでしょうか
389 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 17:57:51.59 ID:5wB+dJF6.net] pkcs7なら11バイトパディングがあれば11で埋まってるんじゃないか 何でパディングするかは決まってるが、常に0というわけじゃないぞ
390 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 18:16:09.91 ID:mt/VYpXM.net] >>388 そうですよね・・・0で埋まると思ってました >>376 さんの言ってる事がようやく理解できました・・・orz デコードされたbyte配列から、返値の値だけ出力ストリームに書き出したらうまくいきました MemoryStream output = new MemoryStream(); var len = MydecryStrm.Read(buffer, 0, buffer.Length); output.Write(buffer, 0, len); あってんのかな・・・
391 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 18:48:30.22 ID:8yT/lcxa.net] >>386 0.5ってもろに2の基数で表現できる数だと思うんだけどw
392 名前:386 mailto:sage [2015/11/25(水) 18:54:51.58 ID:tXkV+f/F.net] >>390 だから「リテラル以外」って言ってるでしょ
393 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 18:56:24.86 ID:8yT/lcxa.net] >>391 なるほどすまんかったw
394 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 19:53:05.95 ID:h3PXmhK/.net] ジェネリクスで数値型のみって出来ない? 図形の構造体が不便
395 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 20:08:56.06 ID:8nRfByHy.net] できまふぇん
396 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 20:12:54.04 ID:1zLf2/VR.net] >>393 C#のジェネリックだと、それは無理。
397 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 20:24:59.67 ID:reKtKMrl.net] IConvertibleだっけ? で制約して少しは
398 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 20:32:25.22 ID:1zLf2/VR.net] where T : struct , IComparable, IFormattable, IConvertible, IComparable<T>, IEquatable<T> ぐらいやっておけば、ある程度、保証できるだろうが、Tの演算子を解決できないので、数値型としては、致命的だろう。 dynamicにキャストすればできるがパフォーマンス悪くなるだろうしなー。
399 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 20:39:16.08 ID:h3PXmhK/.net] >>397 ゲーム用だからパフォーマンス悪いのはNG 一つづつコピペは嫌だな・・・
400 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 21:24:32.82 ID:vs30+rKr.net] 図形ならdoubleオンリーで十分でしょ 無駄な汎用性
401 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 21:36:42.28 ID:/dJ6YH5t.net] intを使いたいときもあるのでは? でもdoubleとintの二つで十分だな。
402 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 21:42:36.50 ID:puppJQzH.net] そうします
403 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 22:07:31.65 ID:vs30+rKr.net] doubleはintの値域を完全に誤差なしで表現できるからdoubleさえあれば十分だよ まずありえないが、万一doubleじゃ遅すぎるとかメモリを食いすぎるとか実際に問題になればint版を作ればいい
404 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 23:00:55.11 ID:puppJQzH.net] >>402 メモリって出来るだけ小さいほうがいいと思うんですけど・・・ あとはint専用メソッドでのキャストが面倒だし
405 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 23:06:11.07 ID:1zLf2/VR.net] 何で動かすかは知らんが、intとdoubleのメモリ使用量の差なんて、気にしなくても良いだろう。
406 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 23:07:44.54 ID:5wB+dJF6.net] レジスタとかSSE(AVX)観点からのツッコミは禁止します こんな素人のガキにそんなことを説いても仕方有りません わかるでしょ?あなた大人でしょ?
407 名前:デフォルトの名無しさん mailto:sage [2015/11/25(水) 23:26:36.71 ID:BOe/at8N.net] これふらっとに居たUnityでゲーム作りたいんですけど?君だよ 向こうで相手にされなくなったからこっちに来たのか
408 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 00:07:28.22 ID:Hq8pnJS9.net] decimalでいいだろ
409 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 00:10:18.88 ID:lRbPvEyn.net] decimalは、ちょっと効率悪いんじゃないかな?
410 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 07:11:25.70 ID:bJkKvp09.net] >>408 なぜ?容量くいすぎ?
411 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 07:44:33.83 ID:tBrlRgSz.net] パフォーマンスを気にする初心者はコーディング前に必ず 「動かないソフトウェアのパフォーマンスはゼロである」と10回唱えなさい
412 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 08:32:48.63 ID:uG3Gqvd0.net] そりゃニーモニックレベルでサポートされているdoubleやintに比べりゃdecimalは非効率だろうね
413 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 12:17:53.24 ID:EjvQUqKT.net] Windows10にしたらデザイン画面上のレイアウトがぶっ壊れてしまいました でもコンパイルするとWin8で開発してた状態が維持されてます ということは、Win10のデザイン画面上で整えるとコンパイル後に崩壊しそうです デザイン画面をWin8互換にする方法はあるでしょうか?(VS2013)
414 名前:412 [2015/11/26(木) 12:49:20.51 ID:EjvQUqKT.net] Win8互換という言い方は変でしたね 現状Win10同士でもデザイン画面とコンパイル後が一致しないので、これを正しい状態に修正する方法が知りたいです
415 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 13:01:57.24 ID:zuyebkBK.net] >>412-413 何を言ってるのかさっぱり分からない。 推敲って物を知らないのか。
416 名前:412 [2015/11/26(木) 13:05:13.05 ID:EjvQUqKT.net] >>414 OSをWindows8.1からWindows10にアップグレードしたら、 VS2103のデザイン画面上のレイアウトとコンパイル後のレイアウトが著しく異なる状態になったので、 修正方法が知りたいです
417 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 13:06:34.04 ID:EjvQUqKT.net] >>414 間違えましたw OSをWindows8.1からWindows10にアップグレードしたら、 VS2013のデザイン画面上のレイアウトとコンパイル後のレイアウトが著しく異なる状態になったので、 修正方法が知りたいです
418 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 13:29:28.65 ID:wLo/SUaP.net] 少し冷静になってはどうですか はやる気持ちを抑えて
419 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 13:31:41.06 ID:zuyebkBK.net] >>416 まだ何を言ってるのかよく分からんけど、Windows Form? だとしたら自動スケーリングの仕様に起因する問題かね。 Windows10入れてないからよく知らないけど、たぶん直接的にはシステムフォントの違い (Formのフォントを既定値のままにした時に設定されるフォントの違い)から来てると推測。 最初にプロジェクトを作った環境でFormのフォントを(既定値のままじゃなくて)明示的に指定するか、 AutoScaleModeをDpiに変更すれば治ると思うけど。 もちろん今の環境で修正してもいいけど、恐らくデザインの修正が必用になる分面倒くさい。
420 名前:412 mailto:sage [2015/11/26(木) 14:26:44.77 ID:EjvQUqKT.net] >>418 Windows Formです フォントを変えてもレイアウトは変わりませんでした Dpiにすると、ボタン型チェックボックスとボタンの高さがコンパイル後の画面では狂ってしまいます 他も全般的に狙ったレイアウトにならず微妙に汚くなります
421 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 14:30:47.94 ID:lRbPvEyn.net] >>419 Win10は、使ったこと無いけど、AutoScaleMode.Noneにしてスケール調整しないようにしてみては?
422 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 14:59:05.28 ID:zuyebkBK.net] >>419 だから、最初にそのプロジェクトを作ったのと別の環境でAutoScaleModeを修正する場合は 恐らくデザイン(Formやコントロールのサイズ)を手動で修正しないとダメ。
423 名前:412 mailto:sage [2015/11/26(木) 15:32:43.03 ID:EjvQUqKT.net] >>420 Noneはデザイン時からもっと大幅に変化します(ボタンが巨大になったり) >>421 手動で修正したものに対し、コンパイル後の画面が狂うんです 高さ28のボタン型チェックボックスに対し、ボタンの高さは33にしないと揃いません こうするとデザイン画面上ではボタンの方が大きいですが、実行すると揃います ガイドで均等に揃えた縦方向の隙間も不揃いになるので、実行しては再調整を繰り返します 左右の隙間もデザイン時より狭くなるので、実行してから再調整が必要です ログイン画面のような、フォームにコントロールを直接置いた単純なレイアウトでは特に問題ないですが、 タブコントロールの中にテーブルレイアウト、その中にパネル、その中に小さなコントロールをたくさん置くと狂いが目立ちます
424 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 16:37:00.62 ID:uhVdTG0g.net] 画面のDPIはどうなってんの?
425 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 16:46:03.36 ID:lRbPvEyn.net] こういうところがフォームだとつらいところなんだろうなー。
426 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 16:51:58.32 ID:zKve/pIE.net] 同じかわかんないけど・・・ ソースレベルでDPIに変更したら派手に崩れた経験があって 最初は手作業で直してたんだけど、再度デザイン画面で表示している状態で DPIに変更したら自動的に修正されてレイアウトが維持されたよ 前の状態を正常に表示できる環境かつデザイン画面の状態でDPIに変更してから 新しい環境に持って行ってみたら? 可能性のひとつでしかないけど・・・
427 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 18:21:50.50 ID:zuyebkBK.net] どこぞで読んだけど、確かFormデザイナ自体がDPIが違う環境で プロジェクトが開かれることを想定した設計になってないんだよな。 それにしても、新しい環境でAutoScaleModeをDpiに変えてデザインをやり直したら >>422 が言ってるような現象は起こらないはずだと思うんだけど。
428 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 18:26:41.47 ID:0NR9O6jg.net] 俺も >>425 だと思うなぁ 前開発環境が無いならOSのスケール変更すれば行けるよ
429 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 21:37:03.87 ID:uhVdTG0g.net] PerMonitorDPIとかってすごい機能だけど WinFormsとはほぼ相容れない機能だよな いままでそんなこと想定して作ってきたものなんてほぼ存在しないだろ
430 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 21:42:19.08 ID:lRbPvEyn.net] いい加減、WPFに移行しろってことなのかねぇ…
431 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 22:35:57.85 ID:uhVdTG0g.net] WPFですら想定してるのはSystemDPIだけだから PerMonitorDPIに対応するには一手間必要だったりする
432 名前:デフォルトの名無しさん mailto:sage [2015/11/26(木) 23:02:29.24 ID:YemXfTah.net] PerMonitorDPI自体中途半端だよね。 高DPIのタブレットをタブレットとして使ってる時と96dpiのモニターに繋いだ時でDPIの設定が 自動的に切り替わるように出来てもいいと思うんだが、こんな当たり前のことができない。 そもそもWindowsのDPIの設定って細かく指定できないから、高DPIモニタだと ちょうど見やすい設定がそもそもできない。 今に始まったことじゃないけど、MS製品って全然eat your own dog foodじゃない。 ちょっと使ってみればわかるような不都合が多過ぎ。
433 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 00:14:41.65 ID:A193Z9lO.net] ttp://pc.watch.impress.co.jp/docs/column/4kshugyousou/20151125_732083.html Win10でもグダグダらしいな
434 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 01:53:39.06 ID:xmWo3l8b.net] すくなくともゲームはOSのせいじゃないだろこれ
435 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 02:57:35.54 ID:/Io7/sFA.net] まあでもOSのせいかアプリの問題かはユーザーにとってはどうでもいいことだよね。 MSが開発者が間違いを起こさないような情報やプラットフォームを十分整備してるかというと... https://msdn.microsoft.com/ja-jp/library/ms969894.aspx こんな記事もあるぐらいだし、たしかVB5ぐらいからGUIの単位系がTWIPSとかいうのになってて 相当昔からMSはモニターが高DPI化することを予測してたはずなんだけど、なんでいまだにこんなにグダグダなのかね。
436 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 03:19:17.61 ID:YhNUO5F2.net] Direct3Dシーンが混じるとDIP単位と物理ピクセル単位が混在し ストアアプリでもグダることは稀に良くある
437 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 04:01:43.59 ID:YhNUO5F2.net] 写真のゲームの現象はなんだろな リソース修飾子が適応される方法で自動的にscale-200の画像を読み込んだ上で 手動でスケーリングすべきD3D上のレイアウトを100%のまんま設定しちゃった感じかね
438 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 08:47:11.55 ID:4eLPK0ef.net] あと広告の場所がおかしくなることをよく見かける ゲーム画面上に来ちゃってプレイできないことも
439 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 13:49:45.57 ID:fSrmbKqg.net] WinRTでは解決されるの?
440 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 14:40:47.55 ID:7QRTKik/.net] >>386 >そもそもDoubleの値がぴったり0.5になることなんてリテラル以外まずあり得ないだろ 君はc以外の言語使った事が無いだろ…
441 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 15:08:55.10 ID:Vijo2SgH.net] 内部の浮動少数の表現が2進数か10進数かという問題かな MSX-BASICは FOR I=0 TO 1 STEP 0.1 でもちゃんと10回回るけど C言語は for(i = 0; i < 1; i += 0.1)で永久ループになるとか
442 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 15:36:15.72 ID:kVrLJTCh.net] なんか訳のわかんないこと言ってるけど、 PCの世界で実数の独自実装とかありえないからw 規格で決まってるしハードウェア実装されれますからw それも別に最近の話じゃなくてもう30年とか前からそうですからw
443 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 15:47:45.27 ID:o8eCS6fy.net] ずれた話をやめろクソの三連星
444 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 20:18:20.42 ID:zdPRWeW7.net] >>440 i<1なら確実に止まるだろ
445 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 20:38:40.96 ID:hocUg2IA.net] >>443 int i なら無限ループじゃね?
446 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 20:43:16.68 ID:zdPRWeW7.net] それ浮動小数と何の関係もないよね
447 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 20:45:43.76 ID:Fe4SmbEP.net] >>441 嘘つきは去れ
448 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 21:45:57.66 ID:4eLPK0ef.net] >>445 ばーか
449 名前:デフォルトの名無しさん [2015/11/27(金) 22:11:41.70 ID:RTiSWedD.net] Visual StudioのC#コンパイラーって Monoのコンパイラーよりも頭悪いんじゃないの?っていう質問です。 まず、参考にしたページがこちら。 https://msdn.microsoft.com/ja-jp/library/ms182278.aspx コンソールアプリにしてMainも入れたものがこちら。 using System; namespace PerformanceLibrary { public class UnusedLocals { public void SomeMethod() { int unusedInteger; string unusedString = "hello"; string[] unusedArray = Environment.GetLogicalDrives(); } public static void Main() { Console.WriteLine("test"); } } }
450 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 22:14:44.99 ID:T6hvzlhk.net] Monoはコンパイラよりゴミのようなランタイムどうにかしたまえよ www.slideshare.net/mobile/melpon/mono-is-dead
451 名前:デフォルトの名無しさん [2015/11/27(金) 22:21:15.30 ID:3Bit5Cyo.net] これをVisual Studioでビルドした結果がこちら。 CS0168 変数'unusedInteger'は宣言されていますが、使用されていません。 CS0219 変数'unusedString'は割り当てられていますが、その値は使用されていません。 unusedArrayについてはノータッチ! わざわざそういうページつくって サンプルコードに変数の種類として配列バージョンの unusedArrayを盛り込んだのに何で警告出さないの? VSの昔のバージョンでは警告出してたけど、 どこかのバージョンからバグったのかな? 警告レベルを変更できるのかな?と思って調べてみたけど、 0から4までで4になってた(0にすると上の二つも出ない)。 ちなみにMonoでコンパイルした結果がこちら。 Program.cs(9,17): warning CS0168: The variable `unusedInteger' is declared but never used Program.cs(10,20): warning CS0219: The variable `unusedString' is assigned but its value is never used Program.cs(11,22): warning CS0219: The variable `unusedArray' is assigned but its value is never used Compilation succeeded - 3 warning(s) Monoは賢い。
452 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 22:26:17.48 ID:CDBWf9iP.net] >>386 1/2がぴったり0.5にならない環境ってどれだけあるんだろうか
453 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 22:29:22.42 ID:R9LWJ84c.net] >>451 バーカ
454 名前:デフォルトの名無しさん [2015/11/27(金) 22:34:46.03 ID:3Bit5Cyo.net] >>449 Monoは死んだとか言って思いっきり恩恵に肖ってるじゃんかwww わろたwww Microsoftはどんどん.NETをオープンソース化してるし、 Monoもどんどんそれを取り込んでる でも逆はしてない。 Monoの技術者の方が上をいってる場合もあるから、 そういうのは逆輸入するべきだな。 今回がその良い例。
455 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 22:35:17.17 ID:zdPRWeW7.net] >>451 値が1/2だと分かってるなら丸めもクソもないだろう 動的な計算の結果がX.5ぴったりになることはまずありえないということ
456 名前:デフォルトの名無しさん [2015/11/27(金) 22:44:19.51 ID:RTiSWedD.net] というか、マイクロソフトは早くザマリン社を買収しろよ。 そしたらunity toolsみたいにザマリンも無料になるだろう。 そしたら今のアプリ開発unity一人勝ち状態に少しは波風を立てられる。 xamarinも無料のスターターあるけど、あれじゃダメ。 ツールの販売で儲けるシステムはもうトレンドじゃないってことにザマリン社は気づいてない。 大規模コミュニティーが出来あがりさえしてしまえば、いやでも儲かってしまうもの。
457 名前:デフォルトの名無しさん mailto:sage [2015/11/27(金) 22:48:18.71 ID:x4TWqBrm.net] >>455 Project Astoriaが終わった今、それだよな。