C#, C♯, C#相談室 Part93©2ch.net

■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part92
http://echo.2ch.net/test/read.cgi/tech/1485589613/

■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

700デフォルトの名無しさん (ワッチョイ 17d2-svSY)2018/09/27(木) 00:24:29.22ID:WuETTr790
>>698
言葉が足りてなかった。申し訳ない。

例示のケースの場合は、
var tmp = (Dictionary<string,object>)dic;
と指定すれば出来るのだけど、Dictionary だけでキャストし直すみたいなコトできないかなって。
as でも Dictionary だけではキャストできないことは確認しました。

出来たとして何の意味があるのそれw
そもそもHoge<int>より大きなHoge<T>とかHogeって型が存在するわけじゃないでしょうw
根本的に勘違いしてないか

702デフォルトの名無しさん (ブーイモ MM7b-/SOc)2018/09/27(木) 08:41:34.87ID:649yR4/AM
genericsでないDictionaryは存在しないからでしょ。
genericsパッケージでないほうのHashtableならできると思うけど安全性を損ねるしやらんほうがいいんじゃね

703デフォルトの名無しさん (ワッチョイ 7f23-P8pm)2018/09/27(木) 12:20:51.28ID:/G4FYlhv0
IDictionaryならあるよ
キャスト時にいちいち型引数を書くのが面倒ぐらいの意味しかないけど

>>700
を読み直してみると、ひょっとして要するにジェネリックの型パラメータを書くのが面倒臭いから
省略できないか?、って言いたいのかな

それなら答えは「できないけど仮に出来たとしても絶対やるな」じゃないの?

もちろん、
using Dictionary = System.Collections.Generic.Dictionary<string, object>;
こういうエイリアスは書けるはずだと思うけど

何にしろ、質問は他人が読んで分かるように書いて欲しいよね

705デフォルトの名無しさん (ワッチョイ 9f9d-G60S)2018/09/27(木) 17:14:16.27ID:kGqzP/YO0
型安全性を無視していいならdynamic使え
そうじゃないなら出来てもやるな

つかジェネリックを勘違いしてるんじゃね

706デフォルトの名無しさん (ブーイモ MM5b-iozB)2018/09/27(木) 17:21:14.85ID:Q+zVeK5uM
それによって何がしたいのかを書いてくれないと何言ってるかわからんよな

707697 (ワッチョイ 17d2-svSY)2018/09/29(土) 00:47:34.72ID:EY+8Y7mF0
ありがと。
やっぱり dynamic 使うしかないかな。避けたかったのだけど。

なにが入ってるか分からない配列の中身を文字列化してログ出力したかったの。(最初は)
object[] の要素の中身が generic だったりしたときに ToString() だとクラス名?にしかならないから。

708デフォルトの名無しさん (ワッチョイ 9f81-kFsT)2018/09/29(土) 03:23:52.22ID:BJdQm5Iw0
なんで何が入ってるかわからない配列なんてもんを触るんだ
静的型付け言語のメリット台無しやんけ

709デフォルトの名無しさん (ワッチョイ 17f2-aemA)2018/09/29(土) 09:01:26.24ID:FmliS3qN0
何が入っているかわからないものを扱いたいと言っていながら一方でdynamicは避けたいというのが
よくわからんなぁ。避けてどうしたかったんだろうか。

710デフォルトの名無しさん (ワッチョイ 17d2-svSY)2018/09/29(土) 11:56:45.30ID:EY+8Y7mF0
単に dynamic が嫌いだったのから。w

711デフォルトの名無しさん (ラクッペ MM0b-ub8u)2018/09/29(土) 12:32:33.34ID:3Hj8wsg1M
ふーん。頭が悪いからじゃなかったのか

712デフォルトの名無しさん (ブーイモ MM7b-iozB)2018/09/29(土) 14:34:45.14ID:9IdCJ4nKM
たぶんjsとかの感覚で言ってるんじゃないかと

713デフォルトの名無しさん (ワッチョイ 17f2-aemA)2018/09/29(土) 14:42:39.43ID:FmliS3qN0
でもJSも実行時に型を判断できるし、逆の意味で大して変わらんと思う。

714デフォルトの名無しさん (ワッチョイ 17d2-svSY)2018/09/29(土) 15:07:47.86ID:EY+8Y7mF0
あれ? dynamic って推奨だったの?
おまえらがどういう場面で使ってるのか教えてくれ。

デシリアライズでもするつもりだったんじゃねの
クッソ面倒なんだよな実際

716デフォルトの名無しさん (ワッチョイ 9fb3-JAAg)2018/09/29(土) 16:56:30.70ID:X4waiIaR0
ん?
> なにが入ってるか分からない配列の中身を文字列化してログ出力したかったの。(最初は)
じゃねーの?

もういいでしょw
たぶん何か勘違いしてるだけだと思うよ

俺もプログラミング初めて2,3年は静的/動的とかコンパイル時/実行時の違いとか
分かってるようでよく分かってなかった

結局なにがしたいのか伝わってこない上に
微妙にムカつく上から目線

719デフォルトの名無しさん (ワッチョイ df41-yxTU)2018/10/06(土) 12:04:22.29ID:upBech+00
それは此処の仕様。

720デフォルトの名無しさん (ワッチョイ 749a-6erE)2018/10/07(日) 19:19:55.60ID:QvnX76F+0
そろそろ.NET標準でDDSのデコードできるようになってくれないかな
エクスプローラーでは普通に表示されるんだから
できればBC6と7までw

721デフォルトの名無しさん (ワッチョイ 66d2-h9xT)2018/10/07(日) 19:43:24.02ID:mZPrgRqf0
>>720
DDS?

722デフォルトの名無しさん (ワッチョイ c7e3-mdXX)2018/10/16(火) 15:29:49.78ID:gfGA4Hi30
>>694
あれ、C#って、マルチプラットフォームじゃなかったの?

Java は、Windows, Mac, Linux, iOS, Android, Chrome, Firefox, IE, どれでも
動いたよね、昔は。

723デフォルトの名無しさん (ブーイモ MM6b-wEhW)2018/10/16(火) 16:00:38.35ID:y5q0bWlwM
Javaもクライアントアプリ分野から撤退したから今はクロスプラットフォーム度でいえばC#のほうが上なくらい(あくまでカタログスペック上は)
C#はWebかコンソールアプリなら.NET Core使えばLinuxやMacで動く
スマホやMac向けのGUIアプリならXamarinだな

724デフォルトの名無しさん (ワッチョイ 7f7a-glGP)2018/10/16(火) 16:22:14.98ID:qWHG2Ppw0
Unityも忘れるな!
mono様々やな

725デフォルトの名無しさん (ワッチョイ be9a-ypm2)2018/10/21(日) 20:25:55.35ID:5Xb93YKt0
普及度とかマルチプラットフォームとかどうでもいいけど
Windows使っていて個人的に何かちょっと作ろうと思ったときに、もうC#以外考えられない体になってしまった

おれはpythonかなー
スクリプト言語はほんま楽やで
客先でインスト制限きつい時はC#とPowerShell
Microsoftさんは早くVSCodeとdotnet cliをWindows標準にしてPowerShellを強制アプデすべき

727デフォルトの名無しさん (ワッチョイ 7b9f-W3oZ)2018/10/21(日) 21:09:20.78ID:FxDWQZOn0
おまんらWPF使ってる?

728デフォルトの名無しさん (スッップ Sd8a-M9WL)2018/10/21(日) 21:09:38.83ID:t4QZh6l3d
うん

729デフォルトの名無しさん (ワッチョイ f3c9-nBLa)2018/10/21(日) 21:34:18.47ID:fYYBLspX0
>>727
個人で使ったけど、これを社内外で使わせるにはMVVMきっちり教えないと破綻確実だから諦めた

730デフォルトの名無しさん (ワッチョイ 7bd2-0gnm)2018/10/21(日) 22:39:29.79ID:eTSVpSn40
>>726
確かに楽だな。 < python
Web API を叩くプログラムをこれで書いたけど、学習まで含めてすぐ出来た。w
VS 上でも書けるのが楽さに拍車を掛けてる。

>>727
うん。でも最近はやってないな。そーいえば。

731デフォルトの名無しさん (ワッチョイ 1f9f-hJ3P)2018/10/21(日) 22:44:00.95ID:GgFjLBNe0
>>727
使ってる。
チームとして採用するのは難しいかもね。

>>731
どうして?
学習コストの高さ?

そうです。
XAMLとか慣れるまで大変だし、やっぱり簡単なFORMになるんじゃないかな。

レイアウトはFormよりWPFの方が楽だと思うんだけどな
Formばかりやってたチームだと学習コストが高くて難しいのはある

735デフォルトの名無しさん (ワッチョイ 7e7a-zPji)2018/10/22(月) 12:25:16.33ID:+Bt5JEYG0
XAMLはVS補佐がまだまだ足りない
昔の落ちまくりよりは格段に進歩はしたが

736デフォルトの名無しさん (ワッチョイ 0f23-Bjop)2018/10/23(火) 06:15:06.44ID:oKq5ee0m0
Formやる前にWPFから入った俺は異端

737デフォルトの名無しさん (ブーイモ MM17-hJ3P)2018/10/23(火) 12:11:12.26ID:Z3T8y8K/M
formは過去の遺産だから、これからやるならWPFが正統だ。

>>735
Blendを使ってください、ってことなんだろうけどなぁ

WPF自体は終わってるよね
次の本命が無いから使うしか無いだけで

740デフォルトの名無しさん (ワッチョイ bee8-nBLa)2018/10/23(火) 12:52:00.65ID:Hcq+1RfE0
なお、どこも新規開発はFormの模様

741デフォルトの名無しさん (ワッチョイ 6a06-nBLa)2018/10/23(火) 12:56:27.59ID:eyu+kwgc0
MSのイチオシはUWPだしコントロールは充実しているんだけどね
TreeViewは完成したし、後はDataGridの完成を待つだけだ

742デフォルトの名無しさん (ワッチョイ 0f23-Bjop)2018/10/23(火) 14:20:00.03ID:oKq5ee0m0
全然未完成じゃねーか

743デフォルトの名無しさん (ブーイモ MMd6-tSmu)2018/10/23(火) 14:36:28.72ID:cDc5Fd7gM
最近のMSはだいたい未完成
ちょうどGithubもやらかしたし、Azureのサービスなんかガチで世に出しちゃいけないレベルのものが大半

744デフォルトの名無しさん (ワッチョイ 7bea-j6wj)2018/10/23(火) 15:11:27.54ID:BR1ycnzw0
未完成の物をとりあえず出して、
バージョンアップで完成させてくのが昔からのビジネスモデルやろw

745デフォルトの名無しさん (ワッチョイ cafb-2Qpo)2018/10/23(火) 15:12:45.43ID:dmXi8fk90
アジャイル

746デフォルトの名無しさん (ブーイモ MM17-hJ3P)2018/10/23(火) 15:51:37.07ID:Z3T8y8K/M
新規開発もFormになるのは人集めの都合だよ。

747デフォルトの名無しさん (ワッチョイ ead2-M9WL)2018/10/23(火) 16:28:52.85ID:9gwDvhi80
>>739
終わってるってどういうこと?

748デフォルトの名無しさん (ブーイモ MMd6-tSmu)2018/10/23(火) 16:45:50.67ID:cDc5Fd7gM
>>747
どういうこともクソもWPFは5年くらい前にとっくに開発終了してメンテナンスモードだよ

749デフォルトの名無しさん (ワッチョイ ead2-M9WL)2018/10/23(火) 16:46:49.17ID:9gwDvhi80
>>748
ソースは?
.NET Core3.0知らないの?

750デフォルトの名無しさん (ブーイモ MMd6-tSmu)2018/10/23(火) 16:51:18.62ID:cDc5Fd7gM
>>749
ソースは.NET 4.5以降のリリースノートだよ
何か気になる新機能はありましたか?

新着レスの表示
レスを投稿する