ふらっと C#,C♯,C#(初心者用) Part135

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 8b75-uWnk)
垢版 |
2018/02/04(日) 22:02:28.59ID:FbKpa1HN0
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part134
http://mevius.5ch.net/test/read.cgi/tech/1511951038/
■関連スレ
C#, C♯, C#相談室 Part95
http://mevius.5ch.net/test/read.cgi/tech/1508180530/
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/

■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/

■情報源
https://msdn.microsoft.com/ja-jp/library/gg145045.aspx
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
151デフォルトの名無しさん (ワッチョイ 179d-jn1r)
垢版 |
2018/02/06(火) 22:27:51.04ID:vApM+tA70
>>138
いい線行きました。!!!
  var marged = dev.Zip(strdt, (x, y) => new {lbl = x, txt = y} );
  foreach (var aa in marged ){
    aa.lbl.Text = aa.txt;
  }
これで動作してますが、Foreachはmargedにメソッドがでてこない。
2018/02/06(火) 22:32:31.84ID:Ss12EoFr0
みんなよく構ってるな
153デフォルトの名無しさん (ワッチョイ 179d-jn1r)
垢版 |
2018/02/06(火) 22:36:21.97ID:vApM+tA70
>>138
できました。解決。ありがとう。
154愛恥人
垢版 |
2018/02/06(火) 22:40:30.16
>>149
LINQは手続き型(?)よりも簡単で良いと思っていたのですが勘違いだったのですね(>_<)
参考にします(>_<)

>>150
元の2行のコードというものが分からないです(>_<)
すみません。

>>151
列挙型にForEachがないみたいですね(>_<)
ごめんなさい(>_<)
155デフォルトの名無しさん (ワッチョイ 179d-jn1r)
垢版 |
2018/02/06(火) 22:56:56.00ID:vApM+tA70
>この二つを混同してるんだろうね。
>LINQは前者であって後者じゃないのよ。

折角のアドバイスにきつい言い方と思うかもしれないが、抽象的な説明よりも具体的に説明をすると
初心者には分かりやすい。あなたにも初心者の部下が沢山いるとおもうがそういうことを心掛けた方がいいと思う。
一番具体的なのは正しいコードで示すこと。
二番目はキーとなる概念が入った間違ったコード。(実際には正しいコードを空で書くのは、ベテランでも難しいからね)
3,4,がなくて5が説教。w
156デフォルトの名無しさん (ワッチョイ 179d-jn1r)
垢版 |
2018/02/06(火) 23:11:07.29ID:vApM+tA70
>それになぜそんなにリンクにこだわるのか

リンクに拘ってるのはもちろん初心者に最も理解しやすいからで、Zipにとくに拘ったのは
二つのシーケンスを同時に回せないと、一方でForeachを使いながら、同時にカウンターを
回すという不細工なことになるから。
2018/02/06(火) 23:36:29.47ID:ori7vw+Ya
>>155
なんか楽しい人だなw
158デフォルトの名無しさん (ワッチョイ 1716-uWnk)
垢版 |
2018/02/06(火) 23:38:39.75ID:zHDOWiCX0
なんだそのゴミレス...
2018/02/06(火) 23:38:57.77ID:vvoO9Mxfa
偉そうだな
わからないのが偉いのかな?
わからないのは自分の責任だと思うが

小学生の頃も学校の先生に文句言ってたんだろ
2018/02/06(火) 23:46:58.21ID:vvoO9Mxfa
回答者に対して具体的にコードを書かないといけないと言い出す初心者
モンスター質問者

自分で手を動かして試して考えられないならコードを書く意味なんてない
永遠に誰かに書いてもらえよ
ここでいくらコードを聞いても無駄だな
161デフォルトの名無しさん (ワッチョイ 174b-uWnk)
垢版 |
2018/02/06(火) 23:47:34.86ID:mI26xXvn0
必死やな。
2018/02/07(水) 01:20:10.99ID:7uLVnCRo0
わからないことを知っている
2018/02/07(水) 01:30:26.34ID:SevIc5yx0
ごちゃごちゃ言わずにスルースキルを鍛えろよ
最近はLINQコード書いたレスは全部NGブチ込んでる
こいつの質問超つまんないし
だいたい自分で作成できる処理について他人に質問するなんて気持ち悪いよ
164デフォルトの名無しさん (ワッチョイ 178d-uWnk)
垢版 |
2018/02/07(水) 01:41:27.68ID:Lh7Y15yl0
オッサンか。
2018/02/07(水) 01:43:34.31ID:LsMjQivz0
いいえjkです
2018/02/07(水) 05:11:16.76ID:DwLQBvRd0
早く人間になるか死ね
2018/02/07(水) 10:29:05.60ID:2q33vA06M
>>122 ですが自己解決しました。
Parallel.Forにしたら問題なく動きました。
2018/02/07(水) 12:29:01.11ID:5fPvfxRBM
>>167
.net4止まりの環境か?
なぜasync/await使わないんだ?
2018/02/07(水) 12:37:35.45ID:REKIkbBWM
>>168
asyncとParallelは役割が違う
Parallelはデータ並列の同期処理
2018/02/07(水) 12:43:07.80ID:ewbQvVlTd
>>169
よくコード見てみ
2018/02/07(水) 12:50:17.72ID:9H8pQbIza
>>170
TaskやめてParallel.Forにするなら意図通りに動作するし別におかしな処理ではないだろ
awaitしたら逐次処理になっちゃうぞ
2018/02/07(水) 12:53:02.46ID:9H8pQbIza
難を付けるとしたら、arrayの各要素に対する処理を並列化したいんだったらParallel.ForEachの方がいいな
2018/02/07(水) 17:10:10.88ID:IuIKj6k10
SVGを使いたくてNuGetからSVG2.3というのをインストールしたんですが
これってマニュアルみたいなものはないんですか?
とりあえずググってみて簡単な長方形とテキストは表示できたんですが
どうやって覚えたらいいんでしょうか
2018/02/07(水) 18:05:16.53ID:rtPEpBT7a
SVGが使いたいなら普通にSVGを勉強したらいいんじゃないの?

ここでHTMLの書き方について質問されてるのと変わりない
2018/02/07(水) 18:11:47.28ID:rtPEpBT7a
一般論として使い方のわからないライブラリがあるならNuGetに書いてあるオフィシャルサイトに
飛んでそこから調べる

最終更新が3年前とかだったら捨てる
2018/02/07(水) 19:06:14.35ID:w9LO8NrH0
Visual Studio Community 2017 を使って
特定のフォルダ「c:\hoge」以下のサブフォルダを列挙する
UWPアプリを作ろうとしています。

IEnumerable<string> subFolders = Directory.EnumerateDirectories(@"c:\hoge", "*", SearchOption.AllDirectories);

foreach (string subFolder in subFolders) {
MessageDialog md = new MessageDialog("");
md.Content = subFolder;
md.ShowAsync();
}

とすると
System.UnauthorizedAccessException:
'Access to the path 'c:\hoge' is denied.'
とのエラーとなります。

しかし、対象フォルダをデバッグビルドされるフォルダ
「C:\foo\bin\x64\Debug\AppX」にすると思った挙動となります。

デバッグビルドされる以外のフォルダにアクセスできるようにするには
どうすればいいでしょうか?
ちなみに Visual Studio を管理者権限で実行しても変わりませんでした。
以上、お知恵をお貸しください。よろしくお願いします。
2018/02/07(水) 19:17:14.76ID:wak0MWKrM
>>176
UWPはそういうもん

セキュリティ上ユーザーに許可されない場所は基本的にアクセスできない
2018/02/07(水) 19:19:24.20ID:wak0MWKrM
忘れたけどユーザーにフォルダピッカーで選ばせないとアクセスできない

アクセスしたらその情報を保存する方法があって次回からそこは普通にアクセスできるようになる
めんどくさいからUWPやPCLは触りたくない
2018/02/07(水) 19:25:31.81ID:5fPvfxRBM
>>169
いやいや、taskつかっとるやん!
2018/02/07(水) 19:25:52.82ID:wak0MWKrM
初心者はUWPを避けたほうがいいと思う
UWjP自体使われていないからこんな質問が出てくる
これ以外にもめんどくさい仕様がてんこ盛り

ある程度勉強が終わった後改めてUWPやったほうがいいよ
2018/02/07(水) 19:29:40.16ID:wak0MWKrM
初心者が上手にアプリの状態を保存したりしつつ画面遷移できるとは思えない
2018/02/07(水) 19:43:44.01ID:w9LO8NrH0
>>177,178,180,181
レスありがとうございます!
素直にフォームアプリで挑戦します。
2018/02/07(水) 20:06:28.97ID:F0tz6mVZM
>>172
後出しですいませんが
並列化したかった箇所は外部の特殊な装置へのアクセスで並列化した数だけドライバのインスタンス持ってます。
arrayとしましたが、最終的にはconcurrentDictonaryを使い装置からのデータをまとめています。

async await使ったことないのですが、
また調べてみます。 ところでそもそもの質問ですが、
>>122のコードでtask内からループカウンタを参照した時にnumItems以上になるのでしょうか?
2018/02/07(水) 20:14:13.39ID:IuIKj6k10
>>174
スレチだったんですね
ありがとうございました
2018/02/07(水) 20:34:01.56ID:wak0MWKrM
UWPの件をひっくり返してみてみると
その他のプラットフォームのアプリは好きなところを読出し放題なんだよ
186恥人
垢版 |
2018/02/07(水) 20:49:50.30
スレチ
2018/02/07(水) 21:17:02.65ID:2uWQJaLvd
>>183
whileのタスクの終了待ち?が機能してない
だからタスクより先にi++が行われる可能性があるのでエラーの現象がでてる
IsCompleteってプロパティがあるからそれを使うといいよ
2018/02/07(水) 21:23:15.78ID:2uWQJaLvd
そもそも>>122は別スレッドで実行しているだけで非同期実行になってないね
実行するとこんな感じ
https://i.imgur.com/mxuCicn.jpg
2018/02/07(水) 21:31:07.99ID:QlGLhKOtM
既存のXMLを編集したい
編集したタグ以外の要素はテキスト表現を変えたくない

どうしたらいいかな?
コンペア取った時に編集した箇所以外も差分に含まれてしまい困ってる
1回DOMを経由してる以上仕方がないのかもしれないけどなんとかしたい
2018/02/07(水) 21:41:31.84ID:7uLVnCRo0
>>189
もっと詳しく
2018/02/07(水) 21:42:13.93ID:3m9Z95aP0
>>188
検証ありがとうございます。
各taskがパラレルに実行されてるから期待どおりです。
IsCompleteにすると当然Serialに実行されるのでやりたい事じゃないです

whileは終了まちではなくdebug用途で足しました。
192デフォルトの名無しさん (ワッチョイ 179d-jn1r)
垢版 |
2018/02/07(水) 21:42:16.51ID:e8WHE/qt0
それは簡単だよ。編集した箇所いがいは差分にでないコンペアをすればいいだけだ。
2018/02/07(水) 22:16:31.84ID:o630JNc0d
>>191
そうなのか
それならインデックスの宣言をタスクの外に持ってくだけで希望通りの動作になったのに
パラレルforだと、forのあと重たい処理やってからwaitみたいなことできないから気を付けてな
2018/02/07(水) 22:36:14.66ID:3m9Z95aP0
>>193
あ、確かにtaskの外に置くべきでした。
元はindex = iもなしで直接iを参照してたのでってよく考えると危ないことしてました
2018/02/07(水) 23:03:46.15ID:SevIc5yx0
>>189
手で編集すればいいじゃん
196デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 07:40:14.42ID:2nTnRFgHp
いきなり質問失礼します
スクレイピングで取得した要素を
while (true)
{
var B = driver.FindElementByid(''id1").Text;
var S = driver.FindElementByid(''id2").Text;
Console.WritLine("要素Bは{0} 要素Sは{1}", B, S);
}
でコンソールに表示しています
BとSには常時変化する小数点のある数字が入ります。
この後、

if (B > S)

を実行したいのですが、BもSも文字列として認識されている為出来ません。

数字として認識させる為にはどうすればいいですか?
2018/02/08(木) 07:50:14.20ID:31uXy/SD0
「c# 文字列 数値 変換」で検索!
2018/02/08(木) 08:55:18.85ID:pXGBR/IR0
もしかしてバージョン比較だったりしてね。
199デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 10:13:31.71ID:2nTnRFgHp
>>197
変換出来ませんと出て行き詰まってます

>>198
単にどちらが大きいか見て
コンソールに大きい方を表示させたいだけです
2018/02/08(木) 10:19:57.85ID:mIsTyW1Y0
実行すると変換できませんと表示されるコードを貼れ
2018/02/08(木) 10:34:17.49ID:IFKOrtko0
MessageBox.Show("変換できません");
2018/02/08(木) 10:47:13.30ID:CG8jTlJKM
int.parse
2018/02/08(木) 10:49:23.48ID:CG8jTlJKM
>>196
というか、こんなコードでスクレイピングとかdos攻撃を疑うレベル。
まじて迷惑だからやめて
2018/02/08(木) 11:11:17.51ID:pXGBR/IR0
if ((true == double.TryParse(B, out double valueB)) &&
(true == double.TryParse(S, out double valueS)))
{
// valueB と valueSを比較
}
205デフォルトの名無しさん (オッペケ Srf1-d1eD)
垢版 |
2018/02/08(木) 12:20:41.72ID:M09TAhGFr
>>203
ワイはお前の知性を疑っとるで
余計な事言うとすぐばれんねんバカって
206デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 12:40:08.26ID:2nTnRFgHp
>>200
それをする事でどうなりますか?

>>203
始めて1週間なので、
そう思われる理由が分からないので教えてください

>>204
ありがとうございます
試してみます!
2018/02/08(木) 14:11:43.01ID:mIsTyW1Y0
>>206
どういうコードを書いたせいで動かないのかが分かるんだろ
そうでなければお前は何を解決したくて質問したの?
208デフォルトの名無しさん (ワッチョイ e1eb-5/Jh)
垢版 |
2018/02/08(木) 15:08:58.18ID:JTkprNeY0
無駄なメモリの確保を防ぎつつ、フィールドのスコープを限定する方法を教えてください

現在、このようなメソッドを用意して秒間300回程度と頻繁に呼び出しています
void A(){
byte[] data = new byte[1024];
//dataに書き込む処理省略
}
しかし、私の行う用途にでは、呼び出しのたびにdataの配列分確保するのは無駄で、前回の使い回しで十分なんです
dataをメソッドの外で宣言しメモリの確保もすればいいのかもしれませんが、スコープが広がってしまいます(すでに書いてしまったコードがdataという名前のフィールドだらけで収拾がつかなくなっています)
何か手軽に無駄なメモリ確保を防ぐ方法は無いのでしょうか?
よろしくお願いします
2018/02/08(木) 15:19:58.53ID:XaQu4uN/0
static
2018/02/08(木) 15:34:43.45ID:OcC2yENka
>>208
VBにはインスタンスと同じ寿命でスコープだけメソッドの変数があるけどC#にはありまへん。
意味があると思えんけど、ラムダ式のキャプチャを利用して、byte[]ではなくFunc(byte[]>のフィールドを持つとか。

まあ、そういう馬鹿馬鹿しいこだわりを捨てて、素直にbyte[]のフィールドを持つのが一番でしょう。
211恥人
垢版 |
2018/02/08(木) 15:45:33.68
>>196
常時更新ってC#のコードでDOM操作するってこと?
2018/02/08(木) 16:39:22.84ID:Kmo7gsHqM
>>208
どうせ初心者のうちに書いたコードなんて後で全部捨てて書き直すことになるんだから余計なこと気にしなくてよろしい
213デフォルトの名無しさん (ワッチョイ 2260-wuSi)
垢版 |
2018/02/08(木) 16:39:44.59ID:NS8cMe+I0
この間のwin10のアップデートでwebbrowserの挙動に何か変化有りませんでしたか?
214デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 17:48:49.85ID:2nTnRFgHp
>>207
変換出来ませんと表示させるコードを書けば、解決策が見つかると言う意味で解釈したらいいですか?

変換出来ませんと表示させるコードを書く理由が分からないので教えてもらえると助かります。
215恥人
垢版 |
2018/02/08(木) 17:50:05.38
ワロタ
216デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 17:53:07.66ID:2nTnRFgHp
>>211
これがDOM操作と言うのか私には分かりませんが、
ウェブサイトに表示されている、リアルタイムで変化している数字を読み取って比較して表示するという操作がしたいって事です
2018/02/08(木) 17:57:58.17ID:rH5InDMMM
>>208
そのままでもいいなでは?

一応解決法

外で適当な名前でフィールドを確保
static byte[] buffer= new byte[1024];

中でそれを参照
byte[] data=buffer;
2018/02/08(木) 18:07:28.71ID:rH5InDMMM
>>216
そもそも何を使ってスクレイピングしてるかすら書いてないから
みな困惑している

seleniumなんだろうけど
219デフォルトの名無しさん (ササクッテロレ Spf1-ST63)
垢版 |
2018/02/08(木) 18:11:56.95ID:2nTnRFgHp
>>218
申し訳ない
seleniumでphantomjs driverです
2018/02/08(木) 18:12:19.29ID:rH5InDMMM
仮にの話だけど

自分でリフレッシュ(再送信要求)してないのに値が変わってるなら
サイトがjavascriptで値を書き換えてるんだろうからDoS攻撃にはなってない
2018/02/08(木) 18:29:54.13ID:XaQu4uN/0
>>217
外じゃないと駄目だっけ?
中でよくね?
2018/02/08(木) 18:35:48.21ID:rH5InDMMM
cと勘違いしてるだろ
2018/02/08(木) 18:53:26.96ID:XaQu4uN/0
>>222
動作違うのけ?
2018/02/08(木) 19:01:05.76ID:K4fxlDLAM
>>205
どう客観的に判断してもおまえの方が頭おかしいだろ
2018/02/08(木) 19:02:24.64ID:K4fxlDLAM
>>216
サイバーテロだから基本をマスターするまで止めろ
2018/02/08(木) 19:07:12.06ID:8qhKGghxM
>>204
ちょっとそれるが
> if ((true == double.TryParse(B, out double valueB))
って書く人がたまにいるけどなんで不要な true == をいちいち書くんだろう?
2018/02/08(木) 19:10:37.15ID:HksZ1obU0
>>226
説明的コード
228デフォルトの名無しさん (ワッチョイ 99b3-ST63)
垢版 |
2018/02/08(木) 19:17:49.11ID:2Quw3/HN0
>>204
これでいけました
ありがとうございます
2018/02/08(木) 19:21:39.99ID:rH5InDMMM
>>226
英語に不慣れだからかな…

if(cat.IsAnimal==true)
if(true==cat.IsAnimal)

俺は気持ち悪いのでそういう使い方はしない
がnull許容型だと強制されるので非常に不快
2018/02/08(木) 19:28:45.93ID:rH5InDMMM
日本語で見るとbe動詞が不格好だな

は動物プロパティ

if(猫.は動物)
if(田中誠.は動物)
2018/02/08(木) 19:56:58.37ID:pB3FNlLq0
>>228
図書館事件よく読んどけ
逮捕されたくなかったらな。
2018/02/08(木) 21:04:14.05ID:+n10mrf5a
>>226
本当は分かってるんでしょ?w
人が悪いよ

たぶんデリゲートやラムダ式に拒否反応を示す人の思考回路と同じ。
値って考え方が呑み込めてないんだと思う。
233恥人
垢版 |
2018/02/08(木) 21:06:28.03
>>230
isって「である」じゃないのけ?
234デフォルトの名無しさん (アウアウカー Sa69-Xwku)
垢版 |
2018/02/08(木) 21:07:27.62ID:iBuunKtKa
Is〜もやれやれってため息つくよな
2018/02/08(木) 21:21:20.99ID:915zsRTA0
>>226
ごめんね
2018/02/09(金) 06:50:10.99ID:Oqb9O2xfM
>>233
This is a pen.
これはペンである。

うん、間違ってないな w
2018/02/09(金) 07:59:47.67ID:P5bFhw7XM
>>226
設計者が悪い
〜が真の場合〜する
これをコードにするとブーリアンとの比較になる
〜の場合
ならブーリアンとの比較にならない
2018/02/09(金) 08:08:26.68ID:XPAWz2Uc0
わたしのことでけんかしないで
( ;∀;)
2018/02/09(金) 09:40:28.56ID:/RflGba8d
>>226
trueとfalseを=で書く、falseだけ=で書く、falseだけ!で書く
どれでもいいけど!を使いたくないって話はよく聞くな
falseを=で書くならtrueも同じ様に書いた方が見やすいかもね
2018/02/09(金) 09:46:12.82ID:XMMaiogJ0
VS2013からVS2017で、
C#のWinForm的には何か大きく変わりましたか?
WPFやUWPやXamarinは使わないです
2018/02/09(金) 11:00:06.20ID:fIXFpK3Ia
if(a==true) if(a==false) ははっきり言ってダメなやり方
たとえば b!=’1’の結果としてaがあった場合
aには充分な論理的結果が入っているのに
それを比較してる

つまり
if(b != '1')
bが'1'でないならを
if((b !=' 1') == true)
bが’1'でないが真なら としてる

無駄に条件比較の次元が増えてる
2018/02/09(金) 11:18:11.85ID:XPAWz2Uc0
ってことよ。
言語仕様で保証されてるから

ってもうええやろ
2018/02/09(金) 12:40:19.33ID:Un6XU7IsM
>>240
はるか昔に開発終わってるから何も変わってないよ
今のVSでアグレッシブに開発進んでるのってプラットフォームでいえばWeb関係でCoreとかAzure、
VS自体の機能でいえばチームコラボレーション系がメイン
もはや昔ながらのクライアントアプリ開発者には何の恩恵もない代物
2018/02/09(金) 12:55:39.76ID:Un6XU7IsM
あと、日々のマイナーアップデートで平気でC#の言語のバージョンが上がるという、昔のMSからするとありえないことをやってる
プロダクトを自己責任で軽いノリでリリースできるような事業形態の組織なら、
ある日突然新しい構文が使えるようになったりして楽しいからVS2017に移行する価値はあるよw
2018/02/09(金) 13:29:03.11ID:HaVaZvGAa
>>237
それも違うというか、まさにそういう考え方をする人が>>226みたいな書き方をするんだと思うw
ifを○○なら××する、みたいな条件判断だと考えると、○○の箇所に比較演算子を書きたくなっちゃう。
(だからBASIC上がりの人はこういうコードを書きたがる)

逆にifなんて実態は機械語のJZ(Jump if Zero)で、要するに単に値を評価して分岐するだけ、
って考えると>>226みたいな書き方見るとなんじゃこりゃって思っちゃう
2018/02/09(金) 13:36:54.05ID:oYoiHq1LM
最近コードの自動生成をよくする
falseのときは書いて
trueのときは書かないとかやってねぇからtrue==は出る
同じノリだろ
2018/02/09(金) 13:59:22.67ID:XMMaiogJ0
>>243-244
なるほど、ただのクライアントアプリだけなら関係ないのですね
新しい構文を勝手に使うとたまに怒られるので、止めておきますw
2018/02/09(金) 14:30:07.84ID:h6aWYpFC0
bool?使うとtrue==は書かざるをえないんだよね。使いみちは限られるがUWPのx:Bindでbool?使わざるを得なかったりする
2018/02/09(金) 15:38:49.43ID:BbZWe4RQM
>>248
bool? は if (x ?? false) の方がスマート
2018/02/09(金) 18:08:05.87ID:boHsluDEM
>>245
プログラマは考えてはいけない
どんなにおかしなプログラムになっても設計書の通りに書くことが大切
製品の品質より方法論や会社のルールを優先しよう
それがサラリーマンのあるべき姿だよ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況