[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 05/12 07:11 / Filesize : 279 KB / Number-of Response : 1029
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C#, C♯, C#相談室 Part91



1 名前:デフォルトの名無しさん [2016/06/29(水) 04:39:09.19 ID:sT3gw8va.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/
C#, C♯, C#相談室 Part89
peace.2ch.net/test/read.cgi/tech/1443271409/
C#, C♯, C#相談室 Part90
echo.2ch.net/test/read.cgi/tech/1455160063/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。

2 名前:デフォルトの名無しさん mailto:sage [2016/06/29(水) 18:23:32.48 ID:UgmC8hz1.net]
>>1


3 名前:デフォルトの名無しさん [2016/06/30(木) 22:05:57.88 ID:JGx4fkAA.net]
>>1

こっちが先だから一度上げておこう

4 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 06:31:52.76 ID:OubZeepB.net]
Task使うとたまに
var a = new A();
list.Add(a); <- NullReferenceException
とか出るんやが、これ何なん?

5 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 06:53:26.32 ID:VHbSiagN.net]
俺は見たことない

お前の環境が悪いもしくはお前のコードが悪い
おま環もしくはおまコー

6 名前:デフォルトの名無しさん [2016/07/02(土) 09:13:06.45 ID:K03FbX+c.net]
>>4
listをどこかでnewし直してるんじゃない?

7 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 10:04:13.18 ID:h0xKmlhE.net]
aかlistかどちらかがnullで間違いないが作った本人しか確認しようがない
デバッガで見るか検証用のコード挟めばすぐ原因わかるだろう
仮に .Netのバグでも対処するしかないんだからw

8 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 10:31:02.23 ID:OubZeepB.net]
スレッドの問題だった。
listは静的なメンバで宣言時にNewしとった。
止まった時変数確認したら中身入っとるし、なんやこれと思ってたが
ググったら別スレからアクセスされるとたまに出るってさ。

9 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 10:33:03.36 ID:076trUWv.net]
var a = new A();
おま環以前にこれで静的メンバを表したつもりとか池沼すぎるわ

10 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 12:13:19.40 ID:h0xKmlhE.net]
>>9
お前は何を言っているんだw



11 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 13:59:47.20 ID:ntDBmTYJ.net]


12 名前:デフォルトの名無しさん mailto:sage [2016/07/02(土) 15:22:19.85 ID:vZ4Zd/Cc.net]
ファーw

13 名前:デフォルトの名無しさん [2016/07/06(水) 22:53:40.68 ID:IPuEGOod.net]
質問失礼します。

foreach(string key in tbl.Keys)
{
なにがしかの処理

if(とある条件) {
tbl.Remove(key);
}
}
(tblはHashtableです)

上記のコードはエラーになります。
ループ命令(for , foreach , while)で回しつつテーブルの要素をRemoveしていきたいのですが、どうしたら良いでしょうか?
tbl.CopyToで一旦Arrayに確保してループ命令で回す事で可能ではありますが、CopyToが省メモリやCPU負荷対策の観点からあまりよろしくないので、
別のやり方で行えるのであればやり方を教えていただきたいです。
分かる方、よろしくお願いします。

14 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 23:01:12.41 ID:3aTr7TOP.net]
>>13
foreachで消したらダメなんだと思う
forかwhileでも普通に昇順(i++)に消すと格納位置がずれて違う場所がRemoveされていく
forかwhileで最後から降順(i--)でやると確実で安全。
もっといい方法があると思うけど

15 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 23:12:33.81 ID:3aTr7TOP.net]
連投スマン。最後のは「多分もっといい方法があると思うけど、わからないのでそれは他の人に任せるw」
一応昇順でまわすときはRemoveしたときはi++しなければいいんだけどスマートじゃないんだよなあ

16 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 23:47:15.55 ID:S9qDm7+H.net]
コンテナの巡回中に、要素を削除したら、誤動作する

ループ {
if(条件){要素削除}
}

普通に外側のループに、コンテナを使わなければいいだけ

17 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 23:49:28.30 ID:iKP3ua4N.net]
for 文の降順処理がいいってジッちゃが言ってた。ような気がする。

18 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 00:03:26.11 ID:Cqn+hsLw.net]
降順といっても、Hashtableにindexあるのかな?
(…しかしなぜHashtable… Dictionaryではダメなのかな?)

・削除対象のkeyを集めたListを作って、そのListをループしてtblの該当要素を削除
(2回ループを回すことになるけど、List作りをLINQでやれば、まぁ、すっきりはする)
・削除しない要素だけ集めた新しいHashtableを作る
…のどっちかがいいような…

19 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 00:20:47.19 ID:DrRAacIx.net]
>>18
別の配列作って処理したくないって書いてあるから下になるな
抜き出した物も作りたくないといわれたらHashtableはindexが参照できないんだから無理って結論に

20 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 00:35:33.67 ID:Cqn+hsLw.net]
削除対象が少なければ、上のListを作る方法の方がメモリの無駄は少なくすむけどね…
逆に削除対象が多いなら下の方がいいんだと思う



21 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 00:35:47.86 ID:Ry0ooGfS.net]
Hashは、O(1) 定時間の計算か、O(log) 木だろ

ループなんかしない

22 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 01:08:17.44 ID:LRi+CZUT.net]
Linqでやるのが正解でしょ

23 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 01:50:14.86 ID:G6Z9/BO/.net]
最近オブジェクト指向エクササイズというものを知ったんだけど
1つのクラスにインスタンス変数2つ、getter、setterは使わない
というのはEntityFrameworkを使ううえで無理が出るし
1行につき1ドットまでってのはLinqで無理が出ると思うんだけど

この辺は単純に例外と思っておいていい?
それとも何か推奨される対処法があったりする?

24 名前:デフォルトの名無しさん [2016/07/07(木) 02:57:33.14 ID:9h7rnjZ8.net]
>>13
ご要望には沿えないけど、こう書いちゃうかな。

string key in tbl.Keys.Cast<string>().ToArray()

25 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 09:08:15.73 ID:StSHjZGi.net]
>>13
List<string>DeleteKeyListを用意して判定追加と要素削除の2回にわけるかな
その方がデバッグしやすそうだ

26 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 14:36:10.59 ID:cR5h4Dc8.net]
画像ビューアのファイル選択機能として
エクスプローラ風のツリービューとリストビューを付けたいのです
ttps://www.ipentec.com/document/document.aspx?page=csharp-shell-namespace-create-explorer-tree-view-control-and-linked-list-view
このページを参考に作成したのですがvisual studioやcodepackを利用してそのまま引っ張って来るようなものはありますか?
また、ファイルの移動方法を自作アプリでやらずにwindowsの標準のコマンドプロンプト動作に投げるにはどうすれば良いでしょうか

27 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 14:52:24.48 ID:/YvaTbjD.net]
>>26
下はWINAPIになるんじゃね
Dragイベント作ってcopyかmoveでやった方が楽な予感

28 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 15:06:46.03 ID:StSHjZGi.net]
XPライクなUIを作りたいという意味だよね
エクスプローラー風と言われてもリストビューに変わってから10年経ってるし

29 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 15:25:19.93 ID:cR5h4Dc8.net]
vixという画像ビューアがあるのですが、まずソコを目指して作りたいのです

30 名前:13 mailto:sage [2016/07/08(金) 10:47:54.12 ID:qHLHYGvL.net]
レスありがとうございました!
削除リストを作成して、後で消すようにしました。
また、HashtableもDictionaryにするようにしました。



31 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 00:47:56.09 ID:IeFM40zW.net]
GCHandleってAllocした後もインスタンスをどこかに取っておかないと勝手にFreeされて消えます?

C++とP/Invokeで相互に呼び出すコードの何処かで
FatalExecutionExceptionが起きて困ってたんですが
GCHandleをリストの中に置いておくと例外が発生しなくなったように見えます

32 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 01:07:27.92 ID:rCgj8vMa.net]
Freeされない限りオブジェクト自体が削除されるような仕様はないと思うぞ

No

33 名前:rmalだとアドレスが差し変わる可能性はあるから
Pinnedにせずにアンマネージドの関数ポインタにデリゲート渡したりしてると危ないけど
[]
[ここ壊れてます]

34 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 08:50:31.57 ID:ks2mzQ2K.net]
メソッド内でPinnedしているのはメソッド抜けたらFreeされるんじゃないかって思ったことはあるな
確認の仕方がわからないから必ずIsAllocatedで見てFreeしているがw
外でAllocしていてもし勝手にFreeされるのなら困るw

35 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 10:56:30.30 ID:IeFM40zW.net]
GCHandle自体もGCの対象になるのなら参照を保持するためにどっかに置いておかないといけないのでは?と思いました

渡してるのはBlittableなオブジェクトではなく普通のC#のオブジェクトなので
Pinは出来ないと思います

MSDNのGCHandleの使用例だと一関数分使っただけでFreeで解放してました
この例だとスコープ抜けるまではGCHandleが有効だから問題無いのでしょうか

私のプログラムはいろいろ事情があってアプリケーション終了まで保持する必要があります

https://msdn.microsoft.com/ja-jp/library/system.runtime.interopservices.gchandle.tointptr(v=vs.110).aspx

GCHandle.ToIntPtrはオブジェクトの内部表現を返すとありますが
GCHandleそれ自体も普通にGCの対象になるのなら
GCHandleが回収された時にIntPtrの指す内容も無効になるのでは?

FatalExecutionEngineErrorが起こるとどうデバッグして良いやらわからないので
もう見たくないです・・・

36 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 12:09:09.40 ID:N/CI4kdC.net]
>>34
GCHandle自体は構造体でメンバもIntPtrだけなのでGCは関知しないはずです
まずは設計がおかしくないか具体的なコードとエラーコードを書くことからかな…

37 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 12:43:38.65 ID:IeFM40zW.net]
>>35
ありがとうございます
直ったような気がしたのは気のせいか・・・

別の問題っぽいのでちゃんと整理してから書きます

38 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 13:14:24.60 ID:u4LDxQcE.net]
そのIntPtrをネイティブの中で使ってないよね?

Normalで作成したGCHandleのToIntPtrはネイティブコードの中で有効なポインタとして使えないはず
コールバックの中でGCHande.FromIntPtrとかやるなら可能

ネイティブ中で使うにはPinnedにしないとダメ

39 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 19:53:46.55 ID:IeFM40zW.net]
>>37
解決しました

マネージドのバイト列をC++に渡すコードで1箇所間違ってポインタの固定を解除している場所がありました
使い終わってからポインタの固定を解除するようにしたらAccessViolationやらFatalExecutionEngineErrorは起きなくなりました

ヒープが破壊されると毎回異なる場所で例外が発生するので
発見に少々手間取りました

40 名前:デフォルトの名無しさん mailto:sega [2016/07/11(月) 15:22:47.57 ID:7hd/2RYR.net]
VC# を対象としてグーグルで検索したいんですが
みんなはどんな単語で検索してます?

ステータスバーつけたいなーと思って
VC# ステータスバー
で検索してもVC#の話は全然引っ掛からないし
もうおうちにかえりたい



41 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 15:43:32.75 ID:sXHA9YNX.net]
C# 〜〜の方が引っ掛かると思うぞ

42 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 15:57:20.24 ID:/bG0/Vab.net]
Visual C#ならまだしもVC#だと無理だろw
そもそもここのスレタイ見て気づけとw

43 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 16:09:48.40 ID:dXiH2hED.net]
言語の話なら、C#
IDEの話なら、Visual Studio
で検索するなぁ。
Visual C#

44 名前:チて単語で検索したこと無い。 []
[ここ壊れてます]

45 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 16:10:29.12 ID:7hd/2RYR.net]
>>40-41
ありがとう・・・ あたたかい・・・これがインターネットのぬくもりか

46 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 17:21:12.19 ID:mNZL1sAZ.net]
昔は # が検索できなかったから C# の検索は大変だったなw

47 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 18:00:51.26 ID:21c/Fb1J.net]
実行形式のアセンブリ(exe)なんだけど、他のアセンブリから参照されて
クラスライブラリ的にも利用されるアセンブリAがあるとします。

Aのコードの中で、自分が実行ファイルとして起動されたのか
他のアセンブリから参照されているのか判定する方法ってあります?

48 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 18:05:40.12 ID:9RtbpjtG.net]
>>45
exeのエントリポイントで判断

49 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 18:10:00.83 ID:JPy01ADF.net]
Assembly.GetEntryAssemblyかな

50 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 18:15:05.34 ID:21c/Fb1J.net]
>>46
mainが実行されたかどうかで判定するってことですか?
泥臭いような気もするけどそれが確実ですかね...

>>47
Assembly.GetEntryAssemblyとAssembly.GetExecutingAssemblyが同じかどうかで
判定する方法は自分も考えたんですが、もうすこし格好いい(笑)方法ないですかね。

とにかくどうもです。



51 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 18:42:30.85 ID:aujF0DMP.net]
>>39
CSharp

52 名前:デフォルトの名無しさん [2016/07/12(火) 12:39:20.12 ID:DwgB0X0X.net]
素人です
日時で 131112345678901234 のような 18 桁の既存データがありまして
yyyy/MM/dd HH:mm:ss.fff に変換して表示したり
任意の日時からこの形式に変換して検索とかしたいのですが
1600年と9時間ずれてまして、、、これと多分同じだと思います
stackoverflow.com/questions/18467157/converting-systemtime-native-c-to-datetime-c

オフセットすればよいのでしょうがダイレクトに変換する方法があれば教えてください

53 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 12:48:51.77 ID:dfUVeTds.net]
1600年w

54 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 12:50:24.25 ID:sNZqT3ZR.net]
>>50
試してないけど↓は使えない?

DateTime.FromFileTime メソッド (Int64) (System)
https://msdn.microsoft.com/ja-jp/library/system.datetime.fromfiletime(v=vs.110).aspx

55 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 13:12:08.29 ID:tZSPgDcN.net]
どの日でも 1600年と9時間のズレなら、 その数字から
ズレ分の数字を足したり引いたりするだけでいいんじゃねーの

56 名前:50 mailto:sage [2016/07/12(火) 13:13:59.61 ID:DwgB0X0X.net]
すみません自己解決しました
FromFileTime
ToFileTime
というので出来そうです

>>52
はい、その通りです

57 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 13:14:11.68 ID:r71+yGRx.net]
とりあえず変換関数にまとめてオフセットしとけばいいじゃないの
その値の出どころを特定できれば逆変換の関数も用意されてると思うけど

58 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:41:05.53 ID:5gnI1m0l.net]
どう見ても 9 時間は時差じゃね?

59 名前:デフォルトの名無しさん [2016/07/14(木) 09:16:24.08 ID:C+m8YTLM.net]
roslyn for scriptingのcsxで、
ランタイムにコンパイルしたとき、コンパイルエラーなどの情報の取り方がわからないのですがどこかにドキュメントか情報ありますか?

60 名前:デフォルトの名無しさん [2016/07/15(金) 11:52:40.40 ID:hUkr60wB.net]
CやC++はわかってるけど、C#もWindowsGUIも初めての人
が対象のお勧め本はありますか?



61 名前:デフォルトの名無しさん mailto:sage [2016/07/15(金) 18:13:53.98 ID:ZmDm8hzp.net]
>>58
C++でwinアプリを作れるならC#はかなり簡単らしいから本とかなくてもすぐ出来る用になると思うよ


62 名前:C# WPF」でぐぐるかやふればいい []
[ここ壊れてます]

63 名前:57 mailto:sage [2016/07/19(火) 17:20:00.19 ID:v3yTzoHI.net]
コンパイルエラーは例外で投げられてました
なかなかデバッグが捗らないけど
とりあえずこれで頑張ります
ツールでも作るか

64 名前:デフォルトの名無しさん mailto:sage [2016/07/25(月) 18:34:49.84 ID:TFIdnWtI.net]
>>45
そんなのが分かったとして何に使うとよ

65 名前:デフォルトの名無しさん mailto:sage [2016/07/25(月) 18:36:17.01 ID:txLZaHuP.net]
そもそもexeをライブラリとして使えた?

66 名前:デフォルトの名無しさん mailto:sage [2016/07/25(月) 18:43:48.98 ID:TBSuk6cv.net]
>>62
DLLと同様に参照することはできる

67 名前:デフォルトの名無しさん mailto:sage [2016/07/25(月) 19:14:23.85 ID:txLZaHuP.net]
>>63
つまりエントリポイントがあればexeにもdllにもなれる、なければdllのみって事か

68 名前:デフォルトの名無しさん mailto:sage [2016/07/25(月) 19:20:39.43 ID:TFIdnWtI.net]
>>63
objフォルダとbinフォルダに同じdllやexeが入っているがどっちのフォルダを参照してもいい?

69 名前:デフォルトの名無しさん mailto:sage [2016/07/25(月) 19:35:04.16 ID:yBIpEw9W.net]
>>65
exeはライブラリとして使ったことないけどDLLはビルド時に参照位置から必要な場所にコピーされるだろ

70 名前:デフォルトの名無しさん mailto:sage [2016/07/26(火) 17:32:31.16 ID:7lk5fbdf.net]
>>45
getmodulename



71 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 15:50:07.60 ID:a4noEYcd.net]
12.3456789 度っていうdegの出力を12.34にするにはどの関数を使えばできますか?

出力はdoubleでも構いません

72 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 15:52:18.56 ID:NbFJgIpb.net]
100倍して小数点以下切って100分の1

73 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 22:18:47.79 ID:p/i6dojq.net]
>>69
有効数字を切る関数ってないんですね
できました、ありがとうございました

74 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:09:59.79 ID:bZmJ9j82.net]
##.00のフォーマットじゃだめなのん?

75 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:12:38.19 ID:l2W1ufxp.net]
フォーマットって四捨五入じゃなかった?
てか一度文字列化してまた数値に戻すとか無駄ありすぎでしょ

76 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:31:28.58 ID:1biageaY.net]
>>72
四捨五入されるのか?
https://msdn.microsoft.com/ja-jp/library/0c899ak8%28v=vs.110%29.aspx
表示に使うか計算を続けるかで変わるが
個人的に表示なら.ToString("F2")とかを良く使っているな
dobon.net/vb/dotnet/string/inttostring.html
数値として使い続けるのなら>>69のやり方一択だが

77 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:40:43.95 ID:fbhAMiPd.net]
こういうのってMath.Truncateで標準実装して欲しいよな

78 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 21:49:13.47 ID:l2W1ufxp.net]
>>73
両ページの例見りゃ分かるけど四捨五入してるじゃん
それと今回の質問は切り捨てだからそれじゃ要件満たさない

79 名前:デフォルトの名無しさん [2016/08/02(火) 22:08:08.02 ID:kMeLb5Qs.net]
丸めなら、double Round( double value, int digits, MidpointRounding mode )でmodeをAwayFromZeroにすれば行けるな。

80 名前:デフォルトの名無しさん [2016/08/02(火) 22:09:05.46 ID:kMeLb5Qs.net]
丸め→四捨五入



81 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 22:21:50.97 ID:tn1deP8x.net]
>>75
今回の例だと、切り捨てたいのか銀行丸めで良いのかわからんのだが

82 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 22:38:02.66 ID:HL5T2dK4.net]
>>73
2ケタなら問題ないだろうけど、もっと下のケタで切り捨てる時に
そのやり方で誤差が出ないか(意図と違って切り上げになったりしないか)ちょっと疑問かも。

83 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 22:46:11.79 ID:HL5T2dK4.net]
かといってどうすりゃいいのかよく分からんな。
static double Truncate(double x, int decimals)
{
  if (x == 0) return 0;
  var round = Math.Round(x, decimals, MidpointRounding.AwayFromZero);

84 名前:
  if (round / x <= 1) return round;
  var digit = Math.Sign(x) * Math.Pow(10, 1 - decimals);
  return Math.Round(round - digit, decimals);
}

これじゃ何か無駄っぽいし
[]
[ここ壊れてます]

85 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 08:09:04.52 ID:izDrDrnm.net]
>>74
切り捨てや切り上げは丸めと違って誤差が影響した場合のインパクトが大きいから実装したくないんだろ
「0.0999999999999999」の切り捨ての結果は大抵のプログラマは0.1を期待してるだろうけど、普通に実装したら0.0になるわな

86 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 08:20:28.03 ID:rSz0AB29.net]
実装されてないのは桁数を指定した切り下げ、切り上げだよ
桁数指定できないのはあるだろ

87 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 08:38:06.19 ID:nNYUFf9P.net]
> 「0.0999999999999999」の切り捨ての結果は大抵のプログラマは0.1を期待してるだろうけど、

いや、それは無い

88 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 11:13:35.07 ID:8916Nt3B.net]
切り捨て?

89 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 11:16:43.05 ID:ZXeq6keH.net]
丸めが気になる数字にdouble使うのはどうかしているだろ
decimalは何のためにあるのかね

90 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 11:22:03.76 ID:vCrtu5C1.net]
decimalって関係あるのか?
動的型付けのキーワードなのに



91 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 11:35:20.08 ID:wuBisWbe.net]
>>85
その発想がおかしいw
問題意識が逆立ちしてるなw

92 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 12:41:58.26 ID:jT3/wbav.net]
>>86
もしかして:dynamic

decimalはこっち
https://msdn.microsoft.com/ja-jp/library/364x0z75.aspx
>>decimal キーワードは、128 ビットのデータ型を示します。
>>decimal 型は、浮動小数点型よりも有効桁数が多く、範囲が狭いので、財務や金融の計算に適しています。

93 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 12:48:18.71 ID:vCrtu5C1.net]
>>88
あっそっちか
dから始まるクソ長いキーワードとして覚えていたから勘違いした

94 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 17:46:25.42 ID:qqYjumI6.net]
>>85
doubleならそれほどでもないと思うが
singleならともかく
そもそも特定の桁から下切って使い続けるってめったにないだろうし
誤差許容範囲を作るのにやったことはあるな

95 名前:デフォルトの名無しさん [2016/08/03(水) 17:52:51.31 ID:vCrtu5C1.net]
NLuaからC#のジェネリック型を使うにはどうすればいいでしょうか?
List<T>を使いたいです

96 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 18:26:06.69 ID:oiDTcOGH.net]
NLuaの作者に聞いたら?

97 名前:デフォルトの名無しさん [2016/08/03(水) 18:29:01.37 ID:vCrtu5C1.net]
>>92
国産じゃないので無理です

98 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 18:32:02.06 ID:oiDTcOGH.net]
C#も国産じゃないからこのスレで質問するな

99 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 18:36:54.29 ID:vCrtu5C1.net]
>>94
国産じゃないから作者に質問できないって言ってるんですが

100 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 18:41:13.99 ID:rSz0AB29.net]
wwww
そんなくだらないことで作者の手を煩わせるなよ
その手はここで聞くよりstackoverflowの方が早くて確実だと思うぞ



101 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 19:20:36.10 ID:OMwBzZOo.net]
まあ安っぽい煽りにのって見当はずれなレスつけるくらいなら2chやらない方がいいな






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<279KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef