ふらっと C#,C♯,C#(初心者用) Part138
■ このスレッドは過去ログ倉庫に格納されています
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part137
https://mevius.5ch.net/test/read.cgi/tech/1523004019/
■コードを貼る場合は↓を使いましょう。
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: checked:vvvvv:1000:512:----: EXT was configured >>347
ありがとうございます
いろいろ試してみたところ、書いてもらった通りメソッドを宣言したオブジェクトのジェネリック型引数が
全部値型ならPrepareMethodの第2引数は要らないみたいです
でも値型と参照型が混在する場合は参照型のハンドルだけ渡せばいいというわけではなくて
値型のものも含めて渡す必要があるみたいなので、
やっぱり基本的にメソッドを宣言したオブジェクトがジェネリック型引数を持つなら
第2引数は必要と考えたほうが安全な気がします >>367
こういう馬鹿みるちいつも思うけど、それやってるのはお前なんだけど...
馬鹿にも程があるなほんと >>372
これやるのも2chの馬鹿の特徴だよね
これ見るといつも思うが、こういう馬鹿には自分自身を見る自意識がないのかね。
お前自身がやってることは何なんだw
それ以前に必死だったら何なのかね。意味が分からん
まるで「お前ウンコした!!!」って騒いでる中学生だけど、ガチでそのあたりで精神年齢止まってる可哀想なお方なんだろうけどね 232C使うようなデバイスでアドレスだのポート番号だの、振り分けが必要なケースなんかレアだろう、
(質問者もそんなこと言ってない)ってのはごく普通の感想だと思うけど、異論があるならできれば
具体例上げて反論すればいい。
マウントがどうとか中学生じみたことしか言えない馬鹿は黙ってろって
いい歳こいて恥知らずかよ >>374
いう相手を間違えてるよ馬鹿
こういう馬鹿も2ch名物だな >C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください
読めないのは誰なのか 結局、物理的な線は一本なんだろ?
なんで他アプリ全員に配るんだ? >>377
お前自身も読めてない。いってるそばから「俺だけ特別」クンか
そもそもなぜ喧嘩を売った側でなく売られた側を非難するのか
馬鹿だろお前。 >>379
それは愚問。
ただ、昨日から言ってるように、現実的に考えれば質問者がやりたいことは
>>344みたいな感じである可能性が一番高いと思う。
もちろん、仮想的な複数の通信チャンネルを実現したい可能性も否定はできない 「自分自身」と「馬鹿」って来たら例外を握り潰す君だから
そいつこのスレに12年いるぜ 年いくつだろ
Hagexを刺した統失くらいはあるのかなw >>382
こいつもいつも思うけど、これで自分をおかしいと思わないんだから幸せでいいよねw
前から誰のこと言ってるのか知らんけど、この意味不明な粘着質、普通にストーカーと同じメンタルだ そもそも匿名掲示板で誰かを「特定」して付きまとってやろう、って動機が理解不能だけど、
普通の人間だったらそんな動機を持つ俺って異常なんじゃないかと悩むと思うんだけど...
いや悩まなくても、多少知恵がある人間なら、それって(2chにはよくいる)負けを認めるだけの
精神的強さを持たない弱者の「精神勝利法」なんじゃないか、とか思うと思うんだけど 遅レスですがobjectをdynamicに変えて値を取る事が出来ました
こんな便利な型があるんですね
ありがとうございました 動機ねえ、スレが荒れそうだからかな
俺に反応して貰って、俺が反応を無視すれば、とりあえず収まるんだよ
そう、いつものことだ >>375
232cは物理層の規格や。今だってモデムやTNC繋げる人もいるさ。 >>329
答え出てると思うけど
プロセスは3つにする
1つのプロセスはシリアル通信のサービスを提供
他の2つはクライアントとしてシリアル通信の要求をだす
要求はQueueで排他する等で安全策取る
プロセス間通信は適当に(ipc使えば簡単かな) >>391
あ、、、要求じゃなくてサーバーが自走して受信のイベントをクライアントに出すのか
でもそれも可能だからね おお、コンプリティッドタスク!!!
使ってみよう
ありがとうございました ipcは死んだ技術なのかと思ってたけどつかってる人いるんだね
デバッグ環境ではうまくいくけど実環境でこけることが多いから最近は使ってなかった 配列内の文字列がtargetStrに含まれてるかどうかを調べるコードなのですが
いまどき風な書き方ってありますか?
var words = new string[] { "ああ", "いい" };
foreach (var word in words)
{
if (targetStr.IndexOf(word) != -1)
{
// hit
}
} >>396
targetStrの中に"ああ"や"いい"が含まれている判定はIndexOfでいいんじゃね?
ループつかわないでLINQのAnyメソッドにしておくとか あ、すまん。おらの見ないでよかと。>>397見てなかったorz まぁ、words.Any(word => targetStr.Contains(word)) ですっきり書こう、が今時?なんかなぁ? >>400
それ、words.Any(targetStr.Contains) でいけるよ
仮引数いらん >>400-401
https://qiita.com/Temarin/items/4ac0de4f395dcecf5eec
このページでは
.Where( string.IsNullOrWhiteSpace );
よりも
.Where( x => string.IsNullOrWhiteSpace( x ) );
を推奨してるけどいまいちよく分からないから詳しい議論を聞いてみたい >>402
お前は何回Where呼ぶつもりやねんと
Whereの引数に渡すデリゲートのnewがネックになるほどタイトなループでWhere呼ぶなら、明らかにその設計自体が問題
どうでもいい机上の空論だから全く気にする必要はない
通常は、そんなことよりもラムダが間に一枚入ることによるメソッド呼び出しのオーバーヘッド増加のほうが問題になる 仮引数を省略してるというより渡してるものが違うだろ。
たとえフレームワークの関数でも、関数自体は俺も渡したくはないな。
xとか付けるやつは意識してないだろうが、引数名も有意義だし。
そもそもこれぐらいならインライン展開されるだろうし。 関数を第一級オブジェクトとして取り回したくないならLinqなんぞ使わず素直にループした方がいいよ 最近はクエリスタイルも悪くないかなって思えてきた
単純に記号が減って読みやすいし
ループで書いたらネストするようなクエリを書きやすい
Effective C#でもサンプルコードにクエリ形式を使ってるね >>404
関数型の世界では関数をそのまま渡すほうが好まれるよ
その方がより宣言的だからな
ラムダはダサい 一級オブジェクトとして関数渡してんじゃん?ラムダでも。Funcがdelegateなのが気に食わんのかな。
ダサいってのは主観的な気がする。 あれ、主張がわからんくなってきた
関数を引数にするのはいいけど、その場合必ずラムダで無名関数作ってから渡したいって話なのか >>408
Haskellとかやってみたらわかるぞ
関数型ワールドでは徹底的にプレースホルダを省くのがクールと見做される
理由は知らん 皆様ありがとうございます!
高度過ぎて理解できてませんがContainsとLINQ any調べてやってみますm(_ _)m >>410
そこら辺は言語毎の宗教だろ
他言語を持ち出して比較するのはフェアじゃない 宗教というか、純粋関数型言語とマルチパラダイム言語で記法を比べられてもな >>410
ポイントフリースタイルにこだわりすぎるのはHaskell界隈でも嫌われてるから
あんま変な誤解を植え付けんでくれ
仮引数があった方がわかりやすいならつければいい
ただ今回のContainsに関してはそれでわかりやすくなる要素が見当たらないので何とも
まぁどっちでも普通に読めるから、どっちでもいいよもう デリゲートとラムダ式は別物
メソッドにラムダ式を渡してると思って実際は変換されたデリゲートを渡してる場合もある
メソッドのシグネチャーを見てラムダ式をわたしてるのかデリゲートを渡してるのか意識すべき やっぱりラムダ式とかデリゲートとか難しい…
>>415
メソッドに渡すのは常にデリゲートだと思ってました
ラムダ式を渡す場合とデリゲートを渡す場合、それぞれの例を教えてもらえませんか? >>416
ちょっと書いてたことはあいまいで間違っていたが詳しく知りたいなら
c# ラムダ式 式木でググる >>415
お前は何を言ってるんだ
ラムダ式は文法要素上はメソッドの一種
メソッドだからデリゲートに暗黙的にキャストされる ラムダ式を渡してるって、その日本語自体がおかしい事に気づくべき。 >>417
勉強になります
>>415 の真意は↓の中で4行目だけはコンパイルできないから気をつけましょうということですか?
Func<string, bool> a = s => string.IsNullOrEmpty(s);
Func<string, bool> b = string.IsNullOrEmpty;
Expression<Func<string, bool>> c = s => string.IsNullOrEmpty(s);
Expression<Func<string, bool>> d = string.IsNullOrEmpty;
このあたりのことがとてもあやふやなので解釈が間違っていたらぜひ教えてほしいです ところで
words.Any(targetStr.Contains) とか
Func<string, bool> b = string.IsNullOrEmpty; とか
これいつからできるようになってたの?
ラムダ式導入時からできてた? >>422
C#2.0からだからラムダより前
今では誰も使ってない匿名メソッドと一緒に入った
匿名メソッドもラムダもメソッドなので、メソッドからデリゲートへの暗黙変換がないと
匿名メソッドもラムダもデリゲートをいちいち明示的にnewしないといけなくなる >>422
ラムダ式は関係ないよw
C#2.0からデリゲートのインスタンスを明示的にnewしなくてもよくなった
http://ufcpp.net/study/csharp/sp_delegate.html#definition
words.Any(targetStr.Contains) ;
は
words.Any(new Func<string, bool(targetStr.Contains));
の省略記法 オマエラ、
今夜ぐらいは仕事の事を忘れて肉でも食いにいけよ あぁそうか、そういえばそのままなデリゲートだったね
すっかり忘れてたww 直撮りで申し訳ないんですが
youとenemy のHP表示→それぞれ1〜9の値を引くの処理をどちらかのhpが0になるまで続けるように組んだつもりなんですが、whileより上の部分と下の部分しか反映されませんでした
どうしたら上手く処理出来るでしょうか
https://i.imgur.com/HbKFSfr.jpg >>428
なるほど、確かにこれじゃあ条件が「hpが0以下の時」になっちゃってますね 助かりましたありがとうございます! >>428
=いらないんじゃないか
>>427
while (you > 0&& enemy > 0){
もしくは
while (true) {
(処理)
if (you<=0||enemy<=0) break;
} >>432
両方hpが無くならないと終わらなかったので後者を使わせて貰いました
参考になります! スクレイピングで、xpathや属性から要素を特定取得できると思いますが、逆に属性を取得することって、できるのでしょうか?
@class=取りたい属性←この値です パーサーなに使ってるか知らんけど
xpath指定で値とれるなら属性指定すればとれるでしょう ロケーションステップの末端に
/@取りたい属性
をつければ取れるだろう
あまりこのスレとは関係ないけど >>435
>>436
その属性を取りたいんですよ。 属性 "名"がほしいのか
属性 "値"が欲しいのかがわからないよな 要素の属性を全部取得する
https://hokaccha.hatenablog.com/entry/20130819/1376895914
要素の属性を全部取得したいんだけど、 jQuery ではできないっぽい。
DOMの element.attributes を使えばいける >>440
属性の値がほしいんですね、名前はtagNameでとれるので id="→sample←"
webページ上の値じゃなくて、→←で囲ったsampleという結果がほしいんです。 >>345 と >>434は同じ人か?
seleniumの話なら
webDriver.Url = @"https://www.seleniumhq.org/";
IWebElement element = webDriver.FindElement(By.Id("promo"));
element.FindElement(By.XPath("a")).GetAttribute("id"); C♯勉強したんだけどネットに参考になるサイトないですか?
VBAはこれで勉強してネットで使いながらそこそこは出来るようにはなりました。何かを作りながら取り敢えず基礎的仕組みを理解出来ればと思ってます。
https://for-guests.com/excel-vba-6006/ >>444
無事に目的を果たせました!
感謝です。 PC上からC#で制御できる汎用IO製品って安いのないんかな?
Raspberry PiについてるGPIOみたいなのが欲しいんだけど デバドラの認証コストだけでも結構なお金がかかるからなぁ >>450
あんまり安くもないがこんなのとか
http://akizukidenshi.com/catalog/g/gK-01977/
このICの本来の用途はGPIOじゃないが、GPIOとしても使えたはず。
でも8本 + αしかないし使い方に癖があった気がする。 むしろラズパイやらArduinoとシリアル通信させてそちらのgpioに何か繋ぐ方が、安心安全いざショートしちゃったとかのアクシデントの時にも安く済むよ。 >>454
それシリアル
USBパラレル変換モジュールの方では? Attiny85のV-USBで遊んでるarduino互換
完成品にDigisparkってのがあるけど尼とかで数百円
https://www.amazon.co.jp/dp/B0154PL3QA/ >>456
だから
>このICの本来の用途はGPIOじゃないが、GPIOとしても使えたはず。
って前置きしてるでしょ。
確認してみたけど、ちょっと変則的だけど一応使えるよやっぱり
パラレルの方(FT245)のICもGPIOとして使えるが(こっちも本来はそういう用途じゃない。ちなみにこっちは使用経験あり)
こっちの方がちょっとだけ高価でGPIOとして使えるピン数も少ない
http://akizukidenshi.com/catalog/g/gK-01799/ >>454
取説見るとデジタルI/Oは5本みたいだが。 >>459
スレ違いだけど、このドキュメントのP3に書いてある特殊機能があるんよ
http://www.ftdichip.com/Support/Documents/AppNotes/AN_232R-01_Bit_Bang_Mode_Available_For_FT232R_and_Ft245R.pdf
最低8本は使える
残りのプラスアルファーがどういう風に使えるかは、たぶんドライバーのAPI
アプリケーションノートに書いてあると思うが、さすがに面倒だから読んでない FTDIのはドライバ必須だし
HIDとかで繋がるやつ揃えた方が楽だよ HIDというか標準クラスね
例えばArduino Leonardo相当であれば何にでも化けられる digisparkというのを使ってたけどHIDデバイスに見えて入出力OK
昔は300円以下で送料無料で中国から買えたんだけど値上がりしちゃった C♯でMySQLを操作したいのですが楽に扱えるライブラリはありますか?
EntityFrameworkを使いたいのですがイマイチ接続できないので
一応昔にSQL書いて操作するパターンも作ったことありますが出来ればせっかくなのでやり取り楽な風にできればと思ってます ■ このスレッドは過去ログ倉庫に格納されています