!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part151
https://mevius.5ch.net/test/read.cgi/tech/1621129559/
■関連スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
https://referencesource.microsoft.com/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
ふらっと C#,C♯,C#(初心者用) Part152
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 3f2c-RUy2)
2021/08/25(水) 19:44:16.81ID:tgvUkE6r0184デフォルトの名無しさん (アウアウウー Sa5b-W1il)
2021/09/22(水) 19:06:33.90ID:H7s1JKhea185デフォルトの名無しさん (ワッチョイ 7778-qDHA)
2021/09/22(水) 19:22:15.10ID:x9hzo5Uv0 粘着しすぎ
186デフォルトの名無しさん (スププ Sdbf-nVhm)
2021/09/22(水) 19:30:17.32ID:BIVRjYoPd >>184
しつこい
しつこい
187デフォルトの名無しさん (アウアウウー Sa5b-W1il)
2021/09/22(水) 20:59:35.34ID:ykEJ9q7La188デフォルトの名無しさん (ワッチョイ 9f6a-5CsD)
2021/09/22(水) 21:17:53.61ID:3pWwqqR20 ところで、どの書き方が好き?
コーディングルール云々は別として好みの話ね
(1) Hoge hoge = new Hoge();
(2) var hoge = new Hoge();
(3) Hoge hoge = new();
コーディングルール云々は別として好みの話ね
(1) Hoge hoge = new Hoge();
(2) var hoge = new Hoge();
(3) Hoge hoge = new();
189デフォルトの名無しさん (ブーイモ MMdb-eTB/)
2021/09/22(水) 21:32:29.48ID:vBUUQQ5hM hoge嫌い
190デフォルトの名無しさん (ワッチョイ f737-tt/w)
2021/09/22(水) 22:51:39.25ID:d5y6nh1w0 じゃあ2で
191デフォルトの名無しさん (アウアウウー Sa5b-ONKb)
2021/09/22(水) 23:31:30.21ID:SH+Gpd0ma Piyo piyo = new Piyo().piyo;
192デフォルトの名無しさん (ワッチョイ 775f-I/Yj)
2021/09/23(木) 00:08:14.65ID:e9nBPEnq0 var hage = new Hage(light)
193デフォルトの名無しさん (アウアウウー Sa5b-hED7)
2021/09/23(木) 00:18:07.56ID:1QHTb9H7a Hoge hoge();
194デフォルトの名無しさん (スププ Sdbf-nVhm)
2021/09/23(木) 00:22:45.17ID:W+8jwCREd >>188
2
2
195デフォルトの名無しさん (ワッチョイ f768-qDHA)
2021/09/23(木) 02:40:16.71ID:xSNs6jtp0 >>188
varが使いたいから(2)で統一。
varが使いたいから(2)で統一。
196デフォルトの名無しさん (ワッチョイ d75f-P0JL)
2021/09/23(木) 06:17:51.94ID:knB3B2Kp0 3だな
197デフォルトの名無しさん (ワッチョイ 9724-IhC7)
2021/09/23(木) 10:39:33.85ID:k5aXOyOM0 4バイトも節約できるんだから3に決まっとろうが
198デフォルトの名無しさん (ワッチョイ 775f-4bEA)
2021/09/23(木) 10:45:10.69ID:zah9lHsX0 1か3
varはjsっぽくていや
varはjsっぽくていや
199デフォルトの名無しさん (ワッチョイ 972d-5CsD)
2021/09/23(木) 10:48:49.49ID:A5zZg67+0 >>188
(2)
(2)
200デフォルトの名無しさん (ワッチョイ 9f47-nVhm)
2021/09/23(木) 11:28:35.90ID:oS4wzjRX0 >>198
型推論と動的型付けはまったくの別物だぞ
型推論と動的型付けはまったくの別物だぞ
201デフォルトの名無しさん (テテンテンテン MM8f-vJdV)
2021/09/23(木) 11:34:40.89ID:dUOklB1+M202デフォルトの名無しさん (ブーイモ MMcf-fBlf)
2021/09/23(木) 11:56:33.67ID:acEFt2vDM203デフォルトの名無しさん (テテンテンテン MM8f-LOKs)
2021/09/23(木) 11:58:17.37ID:8wTnR9dmM Javaはvar使えるぞ
204デフォルトの名無しさん (エムゾネ FFbf-hED7)
2021/09/23(木) 12:34:19.60ID:7tGJmFKPF auto がいいな
205デフォルトの名無しさん (ワッチョイ bf10-td/8)
2021/09/23(木) 12:52:13.66ID:mH17AHdd0 varは使わなくなったな、書き捨てのコードなら速く作業終わってよかったんだけど
後で保守することになって、何の型だかぱっと見て分からない、結局書き直す羽目になる
二度手間
後で保守することになって、何の型だかぱっと見て分からない、結局書き直す羽目になる
二度手間
206デフォルトの名無しさん (アウアウウー Sa5b-ONKb)
2021/09/23(木) 13:06:25.13ID:GXKXc62za variant型
207デフォルトの名無しさん (テテンテンテン MM8f-vJdV)
2021/09/23(木) 13:36:37.01ID:tEWlRRfOM >>205
まさかと思うけど印刷したリスト見てデバッグしてるとかじゃないよね?
まさかと思うけど印刷したリスト見てデバッグしてるとかじゃないよね?
208デフォルトの名無しさん (ワッチョイ 9f47-nVhm)
2021/09/23(木) 13:37:43.63ID:oS4wzjRX0 >>205
varの上にカーソル持って行ったらツールチップで型が表示されるけど
varの上にカーソル持って行ったらツールチップで型が表示されるけど
209デフォルトの名無しさん (ワッチョイ 9702-I/Yj)
2021/09/23(木) 14:16:06.38ID:lUK0l/hC0 Vim使いの人が同じような理由でvar嫌がってたな
まぁVim使いに合わせる訳にもいかないからそのままにしたけど
まぁVim使いに合わせる訳にもいかないからそのままにしたけど
210デフォルトの名無しさん (ワッチョイ 9702-I/Yj)
2021/09/23(木) 14:22:03.84ID:lUK0l/hC0 (Vim使いはC#じゃなくてC++のautoの話だったかも)
それにvar使わないとジェネリックとかで複雑な型が出た時書くの面倒だからね
それに型が変えられたら書き直さないといけないし
それにvar使わないとジェネリックとかで複雑な型が出た時書くの面倒だからね
それに型が変えられたら書き直さないといけないし
211デフォルトの名無しさん (ワッチョイ f737-tt/w)
2021/09/23(木) 14:25:27.53ID:+1CY5Q9Y0212デフォルトの名無しさん (ワッチョイ f737-tt/w)
2021/09/23(木) 14:28:02.99ID:+1CY5Q9Y0 VSCodeですらインテリジェンスなのにVim男は化石すぎるな
213デフォルトの名無しさん (スププ Sdbf-nVhm)
2021/09/23(木) 14:32:54.37ID:CUMa33xsd >>205
秀丸でコーディングしてんの?
秀丸でコーディングしてんの?
214デフォルトの名無しさん (テテンテンテン MM8f-vJdV)
2021/09/23(木) 14:37:00.53ID:dUOklB1+M215デフォルトの名無しさん (ワッチョイ 9702-I/Yj)
2021/09/23(木) 14:46:20.44ID:lUK0l/hC0 >>201
(3)の書き方は俺も今知ったな
まぁ元々は
private List<WeatherObservation> _observations = new List<WeatherObservation>();
って書いてたのが
private List<WeatherObservation> _observations = new();
と書けるようになるってことみたいだね
ローカル変数でそう各メリットは少ないかもだけど、今は(2)に慣れてるだけだろうから、そのうち(3)になってくのかも
(3)の書き方は俺も今知ったな
まぁ元々は
private List<WeatherObservation> _observations = new List<WeatherObservation>();
って書いてたのが
private List<WeatherObservation> _observations = new();
と書けるようになるってことみたいだね
ローカル変数でそう各メリットは少ないかもだけど、今は(2)に慣れてるだけだろうから、そのうち(3)になってくのかも
216デフォルトの名無しさん (アウアウウー Sa5b-2su/)
2021/09/23(木) 15:27:13.76ID:o2KvPEYta VSさんがしきりにvarはやめろ型名書けって囁いてくるからVS使ってる時だけHoge hoge = new();だな
VSCodeのときは脳死でvarって打ってる
本音ではconstって打ちたい
VSCodeのときは脳死でvarって打ってる
本音ではconstって打ちたい
217デフォルトの名無しさん (ワッチョイ 9f47-nVhm)
2021/09/23(木) 15:41:02.12ID:oS4wzjRX0 >>216
俺のVSはvar使えって言ってくるけど
俺のVSはvar使えって言ってくるけど
218デフォルトの名無しさん (テテンテンテン MM8f-vJdV)
2021/09/23(木) 16:30:44.15ID:tEWlRRfOM >>215
長たらしい型名を2回書きたくないと言うのはわかるんだけどそれはvarで充分だと思うんだよね
new()じゃなくてメソッドがインスタンス返すような時はvar使わざるを得ないしマジでメリットが4文字減るだけにしか見えない…
長たらしい型名を2回書きたくないと言うのはわかるんだけどそれはvarで充分だと思うんだよね
new()じゃなくてメソッドがインスタンス返すような時はvar使わざるを得ないしマジでメリットが4文字減るだけにしか見えない…
219デフォルトの名無しさん (ワッチョイ 9f47-nVhm)
2021/09/23(木) 16:44:32.43ID:oS4wzjRX0220デフォルトの名無しさん (ワッチョイ f72f-P0JL)
2021/09/23(木) 16:51:19.32ID:VgSYdOn80 varが使えないところで使えってことなんだろうけど
正直そこまでしてタイプ量を減らす意義が見出せん
varの本来の使い方はLINQなんかでの匿名型なんじゃないのかと
正直そこまでしてタイプ量を減らす意義が見出せん
varの本来の使い方はLINQなんかでの匿名型なんじゃないのかと
221デフォルトの名無しさん (テテンテンテン MM8f-vJdV)
2021/09/23(木) 16:51:37.14ID:tEWlRRfOM >>219
ああ、なるほどフィールドとかだと
private var _observations = new List<WeatherObservation>();
って書けないのか
ちょっとググったら確かに実装がめちゃ大変そうだな
https://stackoverflow.com/questions/4461597/why-cant-class-fields-be-var
ああ、なるほどフィールドとかだと
private var _observations = new List<WeatherObservation>();
って書けないのか
ちょっとググったら確かに実装がめちゃ大変そうだな
https://stackoverflow.com/questions/4461597/why-cant-class-fields-be-var
222デフォルトの名無しさん (ワッチョイ d75f-P0JL)
2021/09/23(木) 17:00:18.43ID:knB3B2Kp0 十分とか言ってるけど215のってvar使えるの?
223デフォルトの名無しさん (ワッチョイ 9f79-NnME)
2021/09/23(木) 17:01:07.90ID:PpSx1KBx0 私はあの中からは選ばない、絶対に
224デフォルトの名無しさん (ワッチョイ d75f-P0JL)
2021/09/23(木) 17:01:12.39ID:knB3B2Kp0 じゃあ3のほうが統一できるメリットあるじゃん
225デフォルトの名無しさん (ワッチョイ b7b0-jOHa)
2021/09/23(木) 17:12:04.49ID:Sp5Iyysf0 new以外の関数からの戻り値を受けるのにvarが使えるから共存するだろ
226デフォルトの名無しさん (ワッチョイ f737-tt/w)
2021/09/23(木) 17:31:12.69ID:+1CY5Q9Y0 >>216
設定で変わるんですが
設定で変わるんですが
227デフォルトの名無しさん (ワッチョイ ff10-qDHA)
2021/09/23(木) 19:02:03.53ID:sP+rEUVs0 私は(3)にしてます
慣れもあってか(2)のほうが書きやすいですが
githubとかでコード見る場合に関数の戻りをvar書かれると型がわからない
VS以外で読み書しないなら(2)でいいと思います。
慣れもあってか(2)のほうが書きやすいですが
githubとかでコード見る場合に関数の戻りをvar書かれると型がわからない
VS以外で読み書しないなら(2)でいいと思います。
228デフォルトの名無しさん (ワッチョイ 9f02-qBMg)
2021/09/23(木) 20:01:59.44ID:O4CJNIQl0229デフォルトの名無しさん (ワッチョイ 9fad-1Bdq)
2021/09/23(木) 23:00:18.51ID:/ClkVF3E0 >>228
プロジェクトによって違う
プロジェクトによって違う
230デフォルトの名無しさん (ブーイモ MMde-DBkT)
2021/09/24(金) 04:58:42.78ID:y2XYMU1vM StyleCopで設定するんじゃないの?
231デフォルトの名無しさん (ワッチョイ e368-zD50)
2021/09/24(金) 05:56:28.56ID:qfZk0bKT0232デフォルトの名無しさん (ワッチョイ d633-tfY6)
2021/09/24(金) 08:28:43.49ID:NPGccV1b0 そんなマイルールあるとプログラミング難しそう。
233デフォルトの名無しさん (ブーイモ MMde-DBkT)
2021/09/24(金) 09:33:22.65ID:irV+RdEOM マイルールで書いてもボタン一発でコーディングルールに沿ったのに変換してくれればおk
234デフォルトの名無しさん (ワッチョイ 9f24-2Lmd)
2021/09/24(金) 09:39:21.92ID:5BpUyVVQ0235デフォルトの名無しさん (ワッチョイ 9ff0-t/PR)
2021/09/24(金) 09:49:52.41ID:/LssCrRN0236デフォルトの名無しさん (ワッチョイ 66de-nUqs)
2021/09/24(金) 10:03:35.81ID:5BQj5+hr0 >>234
説明用にわかりやすく書いてるだけなんじゃあ
説明用にわかりやすく書いてるだけなんじゃあ
237デフォルトの名無しさん (テテンテンテン MMde-c1VD)
2021/09/24(金) 10:14:18.30ID:U+wMsrW6M >>235
135: Dictionary<string, string> contents = new Dictionary<string, string>();
みたいな行もあってあんまり気にしてない感じやね
編集した時期が違うんだろうけど
135: Dictionary<string, string> contents = new Dictionary<string, string>();
みたいな行もあってあんまり気にしてない感じやね
編集した時期が違うんだろうけど
238デフォルトの名無しさん (ワッチョイ 175f-6iP1)
2021/09/24(金) 10:24:15.05ID:/Uk5P+XR0 new()が使えるならnew()
それ以外はvarが最強
それ以外はvarが最強
239デフォルトの名無しさん (アウアウウー Sa43-wXuY)
2021/09/24(金) 10:49:29.55ID:Qkaih1UNa スタイル統一って本当に無駄な努力だよな
ただの見た目、書き方で迷うより同じ時間を使ってそもそもこの変数を消せないか、みたいな方向で悩みたい
ただの見た目、書き方で迷うより同じ時間を使ってそもそもこの変数を消せないか、みたいな方向で悩みたい
240デフォルトの名無しさん (ワッチョイ 92ad-HwYF)
2021/09/24(金) 11:31:51.86ID:eAv8Xp0Q0241デフォルトの名無しさん (アウアウウー Sa43-t/PR)
2021/09/24(金) 13:33:19.92ID:5RECe5Rpa >>239
そんなことはないと思うけど程度問題だね。
何であれ手段を自己目的化してしまうのは確かに愚かだ。
そんなことよりスレ違いだのなんだの他人のやることに
いちいちケチをつけないと気が済まないいつもの数人が静かなのが笑えるねw
ああいう人たちはその自分の欺瞞性に嫌気がささないものなのかw
そんなことはないと思うけど程度問題だね。
何であれ手段を自己目的化してしまうのは確かに愚かだ。
そんなことよりスレ違いだのなんだの他人のやることに
いちいちケチをつけないと気が済まないいつもの数人が静かなのが笑えるねw
ああいう人たちはその自分の欺瞞性に嫌気がささないものなのかw
242デフォルトの名無しさん (エムゾネ FF32-kEnG)
2021/09/24(金) 14:32:17.00ID:6iUyOY+3F スレチ警察ωωω
243デフォルトの名無しさん (ワッチョイ 9f24-2Lmd)
2021/09/24(金) 18:05:14.38ID:5BpUyVVQ0 >>235>>240
派遣が書いたやつだろうな
派遣が書いたやつだろうな
244デフォルトの名無しさん (スププ Sd32-MTek)
2021/09/24(金) 18:11:46.80ID:O5E8wnHVd >>243
悔しいね
悔しいね
245デフォルトの名無しさん (ワッチョイ f378-zD50)
2021/09/24(金) 18:57:42.89ID:w2u8w+pK0 >>243
糞ダサい
糞ダサい
246デフォルトの名無しさん (ササクッテロラ Sp47-CeRv)
2021/09/24(金) 19:48:31.43ID:aNx0zmzyp >>243
ばーwww
ばーwww
247デフォルトの名無しさん (エアペラ SD9b-OE0s)
2021/09/24(金) 20:03:25.45ID:KNT3aGoVD ageておきますね
248デフォルトの名無しさん (ワッチョイ 92ad-HwYF)
2021/09/24(金) 21:23:21.37ID:eAv8Xp0Q0 >>243
コーディング規約ですよw
コーディング規約ですよw
249デフォルトの名無しさん (ワッチョイ 032f-f7S3)
2021/09/24(金) 21:38:44.12ID:RcC3+NL00 hageておきますね
______
/ 〇⊂⊃\
/ \
/ ヽ
l::::::::: |
|:::::::::: (●) (●) o|
|::::::::::::::::: \___/ .0|
ヽ:::::::::::::::::::. \/ ノ
______
/ 〇⊂⊃\
/ \
/ ヽ
l::::::::: |
|:::::::::: (●) (●) o|
|::::::::::::::::: \___/ .0|
ヽ:::::::::::::::::::. \/ ノ
250デフォルトの名無しさん (ワッチョイ 0337-4+1t)
2021/09/24(金) 21:59:31.97ID:Dq17+3pv0 hage.Dispose();
251デフォルトの名無しさん (ワッチョイ 7fe5-uwh6)
2021/09/24(金) 23:49:51.90ID:LxZpM9VS0 平日なのにわずか10分で否定されるのキツい
252デフォルトの名無しさん (ワッチョイ d200-W7uW)
2021/09/25(土) 08:04:24.52ID:FSKWmZuJ0 配列関連をお勉強しとるんですが、
Array, Buffer, BitConverter, Collections.Genericのクラス
これらの他に見ておくべきクラスはありますか?
Array, Buffer, BitConverter, Collections.Genericのクラス
これらの他に見ておくべきクラスはありますか?
253デフォルトの名無しさん (ワッチョイ 6bad-nXzz)
2021/09/25(土) 08:16:02.18ID:1B2aC0zA0 Dictionary
254デフォルトの名無しさん (ワッチョイ 2701-22+D)
2021/09/25(土) 08:46:03.41ID:HriS4h5O0 List
255デフォルトの名無しさん (テテンテンテン MMde-c1VD)
2021/09/25(土) 10:24:06.98ID:BHEQVKdgM256デフォルトの名無しさん (ワッチョイ 0337-4+1t)
2021/09/25(土) 11:36:42.78ID:+gmyYm6Y0 しいて言えばCollections.Generic全部だけど
何にでも使うものだからここだけお勉強しとけっての無さげ
何にでも使うものだからここだけお勉強しとけっての無さげ
257デフォルトの名無しさん (アウアウウー Sa43-wXuY)
2021/09/25(土) 12:46:07.75ID:utiZsGgVa258デフォルトの名無しさん (ワッチョイ 2701-22+D)
2021/09/25(土) 13:14:02.37ID:HriS4h5O0 >>255
そうでしたっけオホホ
そうでしたっけオホホ
259デフォルトの名無しさん (テテンテンテン MMde-tE3I)
2021/09/25(土) 14:38:27.74ID:Ims+woa0M SpanやMemoryは一通りモノ作れるようになるまではスルーでいいというか知らないほうがいい
厨二病のはじまり
厨二病のはじまり
260デフォルトの名無しさん (ワッチョイ f773-Plrh)
2021/09/25(土) 16:31:09.85ID:YVyIn4WH0 SpanやMemory多発だと言語選択間違えてないか疑ったほいがいいな。
261デフォルトの名無しさん (ワッチョイ 9f24-2Lmd)
2021/09/25(土) 17:06:12.97ID:fbhVUQBc0262デフォルトの名無しさん (アウアウウー Sa43-nXzz)
2021/09/25(土) 17:15:16.58ID:9oRN3Q4ya263デフォルトの名無しさん (ワッチョイ b252-vQLG)
2021/09/25(土) 17:23:02.02ID:IUkEhwfn0 そのまま行かせてあげましょう
264デフォルトの名無しさん (ワッチョイ 0302-7j45)
2021/09/26(日) 15:18:24.34ID:ql2ts5nl0 Buffer, BitConverterってあまり使ったことないや
どういうときに使われるんだろ
画像とか扱いたい時?
どういうときに使われるんだろ
画像とか扱いたい時?
265デフォルトの名無しさん (ワッチョイ 2701-22+D)
2021/09/26(日) 15:29:09.22ID:beZMLKyb0266デフォルトの名無しさん (ワッチョイ 5eda-ICJq)
2021/09/26(日) 21:02:40.12ID:gGZfowJe0 エンディアン変換めんどいよなぁ
たかだか2バイトのビックエンディアンをc#のshortに変換するだけでも
var dataLen = IPAddress.NetworkToHostOrder( BitConverter.ToInt16( buf, 32 ) );
で長すぎるんだよな。2バイトくらいだったら
var dataLen = buf[0] << 8 | buf[1];でもいいが、int幅なると記述量増えるし。
byte配列走査しているときはSpanを当てていることが多いから、Span<T>ももうちょっと使い勝手向上させて
int intLen = span.Slice(0,4).ToHostOrder();
みたいに書かせて欲しい
たかだか2バイトのビックエンディアンをc#のshortに変換するだけでも
var dataLen = IPAddress.NetworkToHostOrder( BitConverter.ToInt16( buf, 32 ) );
で長すぎるんだよな。2バイトくらいだったら
var dataLen = buf[0] << 8 | buf[1];でもいいが、int幅なると記述量増えるし。
byte配列走査しているときはSpanを当てていることが多いから、Span<T>ももうちょっと使い勝手向上させて
int intLen = span.Slice(0,4).ToHostOrder();
みたいに書かせて欲しい
267デフォルトの名無しさん (ワッチョイ f378-zD50)
2021/09/26(日) 21:13:30.42ID:VX6MVIFY0 よくわからんけど拡張メソッドじゃあかんのか?
268デフォルトの名無しさん (ワッチョイ b247-MTek)
2021/09/26(日) 22:30:57.79ID:sbicFUHC0 拡張メソッドで対応可能だね
269デフォルトの名無しさん (ワッチョイ 5eda-ICJq)
2021/09/26(日) 23:31:30.83ID:gGZfowJe0 い・いや、そうなんだけどね・・
車輪の再発明というか、作ると色々考慮が必要でとか、そもそもめんどいというか。
車輪の再発明というか、作ると色々考慮が必要でとか、そもそもめんどいというか。
270デフォルトの名無しさん (アウアウウー Sa43-t/PR)
2021/09/27(月) 00:04:24.04ID:XMGm2liDa まあライブラリで実装するほど汎用的というか需要がある処理じゃないって判断なんでしょうね。
つーか大昔からある宗教論争だけど個人的にはビッグエンディアンなんて
どっかのタイミングで追放してしまえばよかったのにw
つくづくこんなの考えた奴馬鹿だろとしかw
ところで、BitConverterってバイトオーダーは環境依存なのかリトルエンディアン固定なのかどっちなんだろう
つーか大昔からある宗教論争だけど個人的にはビッグエンディアンなんて
どっかのタイミングで追放してしまえばよかったのにw
つくづくこんなの考えた奴馬鹿だろとしかw
ところで、BitConverterってバイトオーダーは環境依存なのかリトルエンディアン固定なのかどっちなんだろう
271デフォルトの名無しさん (ワッチョイ f378-zD50)
2021/09/27(月) 00:19:20.50ID:OBbpWDI00 https://referencesource.microsoft.com/#mscorlib/system/bitconverter.cs,34
リトルエンディアン固定っぽいね
固定な癖にビッグエンディアンの実装してあるの謎だけど
リトルエンディアン固定っぽいね
固定な癖にビッグエンディアンの実装してあるの謎だけど
272デフォルトの名無しさん (ワッチョイ 0337-4+1t)
2021/09/27(月) 01:04:33.98ID:lw6R4pVu0 BitConverterはちらっとソース見たらどっちのつもりだよこれって実装だったな
273デフォルトの名無しさん (ワッチョイ 7f2d-PL4X)
2021/09/27(月) 01:27:56.67ID:43Uiwmvz0 >>271のソースはビッグエンディアンのアーキテクチャの時は
BIGENDIANを定義してコンパイルして使うんでしょ
BIGENDIANを定義してコンパイルして使うんでしょ
274デフォルトの名無しさん (スッップ Sd32-KpKw)
2021/09/27(月) 03:03:03.22ID:a10dBt+Nd c#って機能的にはc++のメソッドを全部呼ぶことって出来ますか?
win32apiを弄っていて、当然ドキュメントは99%がc++なんだけど
dllimportとかを使えば全部の機能はc#からも使うことは出来ると思って良いのでしょうか?
それとも、言語仕様の壁があるから使えない機能も普通にあるのでしょうか
win32apiを弄っていて、当然ドキュメントは99%がc++なんだけど
dllimportとかを使えば全部の機能はc#からも使うことは出来ると思って良いのでしょうか?
それとも、言語仕様の壁があるから使えない機能も普通にあるのでしょうか
275デフォルトの名無しさん (テテンテンテン MMde-UzFq)
2021/09/27(月) 07:14:24.44ID:9HRv6vMlM C++で作成したクラスのインスタンスメソッドが呼び出せなかったはず
DllImportで呼び出せるのはあくまでstatic相当メソッドのみ
DllImportで呼び出せるのはあくまでstatic相当メソッドのみ
276デフォルトの名無しさん (オイコラミネオ MM33-c1VD)
2021/09/27(月) 07:49:13.10ID:VW3MkNv6M277デフォルトの名無しさん (ワッチョイ c602-5QVF)
2021/09/27(月) 10:15:30.40ID:I8r9zhJi0 >>274>>275
アドレスさえ取得出来ればメンバ関数含めて全て呼べる
DllImportやGetProcAddresからはポインタ取得出来ないからそれを呼べると言えるかは微妙だが
メンバ関数は第一引数にインスタンスへのポインタが隠されてるだけの実態はただの静的関数だからdelegate* unmanaged[Stdcall]<void*, void>とかにキャストしてvoid*にオブジェクトポインタ渡せば正常に機能する
逆に言えば公開したいメンバ関数があるなら、第一引数にvoid*を沿えた静的関数にしてdllexportすればいい
アドレスさえ取得出来ればメンバ関数含めて全て呼べる
DllImportやGetProcAddresからはポインタ取得出来ないからそれを呼べると言えるかは微妙だが
メンバ関数は第一引数にインスタンスへのポインタが隠されてるだけの実態はただの静的関数だからdelegate* unmanaged[Stdcall]<void*, void>とかにキャストしてvoid*にオブジェクトポインタ渡せば正常に機能する
逆に言えば公開したいメンバ関数があるなら、第一引数にvoid*を沿えた静的関数にしてdllexportすればいい
278デフォルトの名無しさん (アウアウウー Sa43-k+EL)
2021/09/27(月) 17:06:27.12ID:yLuq9hY6a double aaa = double.NaN;
bool bbb = (aaa == double.NaN) ? true : false; //bbb = false になる。えええ
bool ccc = (double.IsNaN(aaa)) ? true : false; //ccc = true になる
どうしてこうなるの?
bool bbb = (aaa == double.NaN) ? true : false; //bbb = false になる。えええ
bool ccc = (double.IsNaN(aaa)) ? true : false; //ccc = true になる
どうしてこうなるの?
279デフォルトの名無しさん (ブーイモ MM0e-tE3I)
2021/09/27(月) 17:16:06.27ID:xIAqABZoM NaNは「数値ではない」ので、いかなる値と比較してもfalseになる
これはIEEEの規格で定められている
ゼロで割ったらいけないのと同じようなもんで、NaNの比較は原則やってはいけない
これはIEEEの規格で定められている
ゼロで割ったらいけないのと同じようなもんで、NaNの比較は原則やってはいけない
280デフォルトの名無しさん (ワッチョイ b247-MTek)
2021/09/27(月) 17:18:52.56ID:3tPBuYxM0 値がセットされてない状態が必要ならdouble?型使え
281デフォルトの名無しさん (アウアウウー Sa43-k+EL)
2021/09/27(月) 17:25:07.40ID:yLuq9hY6a なるほど。厳しすぎるよ
(double.NaN == double.NaN)も成立しないのな
(double.NaN == double.NaN)も成立しないのな
282デフォルトの名無しさん (テテンテンテン MMde-UzFq)
2021/09/27(月) 19:28:23.66ID:3UqjaTSrM283デフォルトの名無しさん (ワッチョイ 9202-2Lmd)
2021/09/27(月) 23:39:00.12ID:hzZ0wOco0 C#9の関数ポインタを利用したりMarshal.GetDelegateForFunctionPointerを利用したらどんなネイティブ関数も呼べるが(どちらも呼び出し規約設定可能)、
問題はそのDLL内の公開されてないメンバ関数ポインタをどう渡すか?に関してはC++同士でも独自に決めないといけない訳でC#どうこうの話ではなくないか?
問題はそのDLL内の公開されてないメンバ関数ポインタをどう渡すか?に関してはC++同士でも独自に決めないといけない訳でC#どうこうの話ではなくないか?
284デフォルトの名無しさん (ワッチョイ 0302-7j45)
2021/09/28(火) 20:06:35.50ID:HRlAR5zx0 こういうジェネリックの使い方ってありなん? 初めて見た
class Hoge<T>{
Hoge2<T> hoge
}
class Hoge2<T>{
Hoge3<T> hoge
}
class Hoge3<T>{
T hoge
}
class Hoge<T>{
Hoge2<T> hoge
}
class Hoge2<T>{
Hoge3<T> hoge
}
class Hoge3<T>{
T hoge
}
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★5 [BFU★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 [ぐれ★]
- 「町中華」の“息切れ倒産”が増加 ブームにも支えられ職人技で踏ん張ってきたが… 大手チェーンは値上げでも絶好調 [ぐれ★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 ★2 [ぐれ★]
