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


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

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



1 名前:デフォルトの名無しさん [2018/12/15(土) 11:07:07.89 ID:0aSEF/I+0.net]
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

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

■関連スレ
C#, C♯, C#相談室 Part93
https://mevius.5ch.net/test/read.cgi/tech/1492818720/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part139
https://mevius.5ch.net/test/read.cgi/tech/1538646998/
■コードを貼る場合は↓を使いましょう。
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
referencesource.microsoft.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

281 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 17:58:55.44 ID:AbSveg4gd.net]
というか戻り値をIEnumerabelにして抽象化しておく事が多いから余計にforeach使うのはあるかもしれない
Linq拡張メソッド作る時とか諸々

282 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 19:24:57.54 ID:Kk36dR3w0.net]
とりまLINQ使って富豪的に組むだろ

283 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 20:11:07.93 ID:LAAyKIEna.net]
>>252
int CalcDefault();
int CalcSpecial();
int Calc() {
if (IsSpecialCase()) return CalcSpecial();
else return CalcDefault();
}
bool IsSpecialCase() => combo.SelectedValue == "D";

とりあえず最初はこれでいいよ
似たような条件分岐が増えてきたらリファクタリングしてポリモー対応できないか検討
最初からポリモーは大げさだからやらなくていい
でも後でリファクタリングしやすいように責務指向でメソッドを切っておくぐらいはやっておいたほうがいい
このへんのさじ加減は経験則だな

284 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 20:18:43.20 ID:ToRrrvnYa.net]
switchを無くすのに多態

285 名前:なんか使う必要ないね。
すくなくともC#にはデリゲートがあるんだから多態使うぐらいならComboBoxのアイテムに
デリゲート持たせた方がいいよ。

個人的にはこれも本当に可読的か疑問だけど。
分岐素直に分岐で書いた方が分かりやすいって
[]
[ここ壊れてます]

286 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 20:29:43.48 ID:u2JtKhAa0.net]
テストするときに圧倒的にわかりにくいコードになんの意味があるの?
バカのやることは本当にわからない

287 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 20:31:56.84 ID:LAAyKIEna.net]
確かに
分岐が多いとテストしにくい
少しならいいけど限度がある

288 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 20:50:47.00 ID:u2JtKhAa0.net]
設計書で分岐が100個あったらswitchcaseかifで100個書けよ
それが気に入らないなら設計書直せよ

そういう当たり前の手続きを無視してコード書いてる雑魚に俺は超えられねぇ

289 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 20:54:23.73 ID:ShjRgn6y0.net]
switch vs 多態って結局プログラムがDRY & SOLIDになってるかどうかって問題に帰着すんだよな

>>255はDRYでもSOLIDでもない
>>275はSOLIDではあるがDRYではない
多態までいけば完全にDRYでSOLIDなプログラムになる

そのコードが一回こっきりで重複がないという前提だと、DRYのありがたみを実感しにくい
だからswitch派が一定数居るのだろうね



290 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 20:58:26.66 ID:AbSveg4gd.net]
インターフェイス厨だから似たような分岐はインターフェイスで分けて個別実装か本当に共通してるなら継承でなんとかしたくなる
それと見返したら俺酷いスペルミスしててワロタ

291 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 22:25:49.08 ID:rPJfKlkHp.net]
cしか知らないのです
vsをダウンロードして独学でc#勉強し始めたのですが、どうにもなりませんです
オブジェクトだのラムダ式だのデザインパターンだの文法的な要素以外に勉強しないとなにを言ってるのかわからない事が多くて、勉強の進め方が間違ってるのだろうと思いました。
初心者丸出しの質問で恐縮ですが、どんな順で何を勉強したら良いでしょう?
また、良書、良いウェブページなどご存知でしたら、ご教示いただければ幸いです
よろしくお願いします。

292 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 22:32:18.90 ID:2N1r/ZHN0.net]
>>282
物まねでもなんでもいいから何か作りまくれ
用語とかから勉強しなくていい。色々調べるうちに覚える
わからなくなったらやりたいことの頭にC#+スペース入れて検索

293 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 22:33:11.37 ID:p93FMJH30.net]
必要性がわからない概念を理解するのは難しい
それはコード書いた経験が少なすぎるから
Cもほぼ入門書読んだだけでしょ
とりあえず自分が理解できる範囲の知識でなにか作りたい物つくった方がいい

294 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 22:52:10.98 ID:qux9+5740.net]
>>282
主にオブジェクト指向関係が分からないみたいだから
オブジェクト指向入門系の本やウェブサイトを探せばいいんじゃないか?

あるいはC#にこだわらないのであればC++の入門書はC言語との違いとして
オブジェクト指向向けの機能に触れているものが多いと思う

実際にプログラム作ってオブジェクト指向の感覚掴みたいなら
個人的にはちょっとしたゲーム作ってみるのもオススメだな 
UnityならC#使えるし

295 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 23:25:56.04 ID:Zm1dLYXR0.net]
>>282
勉強の進め方というか基本的な理解が浅いのでは
Cでも構造体ネストして疑似継承くらいするだろうし
ラムダにしてもクロージャ要素はともかく匿名関数

とりあえずクラスは関数を纏めているのではなく
型を作りデータと結び付けているという事だね
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/index
翻訳が割と酷いが公式にもドキュメントはあるよ

296 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 23:31:48.76 ID: ]
[ここ壊れてます]

297 名前:grH+sReD0.net mailto: ご教示ありがとうございます
いわゆるコンソール用のアプリケーションなら、cで充分私が必要とする程度のものは作れるので、わざわざ新しい言語なんか習得したいとは思わないんですが。
やっぱり、GUIのアプリケーションの方が使うとき楽だとら思いまして、なんとかc#勉強して作れるようになりたいなと言うのが発端なんです

vsで参考になるようなところを参照してつまみ食いで作ったのですが、少しでも自分で機能を追加しようとすると、マイクロソフトのクラスライブラリなんか知らないので、なかなか困難で。
おまけにクラスというかオブジェクト指向って奴だと、無闇矢鱈と真似すれば良いという手法が私では通用しなかったのです。

どのようにクラスを作って良いのか基準もわからないですし。
オライリーのc++の本があるので読んだのですが、そこでは電子レンジをモデルにしてオブジェクトの説明をしてくれたのですが、なかなか良く分からず

デザインパターンとやらを先に勉強しておくべきなのかとチラホラ読んだのですが、これもまた実装とは程遠い座学の世界でピンと来なくて泣きそうです。

みなさん、ある程度使えるようになるまでどんな順序でなにを学んだのか、ご教示いただければたすかります
[]
[ここ壊れてます]

298 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 23:33:48.23 ID:grH+sReD0.net]
図々しいお願いで恐縮です

299 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 23:35:09.56 ID:opRVBBPd0.net]
デザパタは経験積まないと有り難味が判らないから放置でいいよ
作りたいものを完成させるにはどうすれば近道かだけ考えろ



300 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 23:40:43.54 ID:grH+sReD0.net]
>>289
デザイパターンはある程度蓄積が出来てないとありがたみがわからない、だから、後回しでも良いと言う意見ですね
クラスを作る定石集のようなものだと思ったので、先に勉強した方が良いのかとも思っておりました
定石知らなくても、楽しく将棋はできるのだから、後回しでも良さそうですね

ご意見ありがとうございます

301 名前:デフォルトの名無しさん mailto:sage [2019/01/15(火) 23:50:54.16 ID:u2JtKhAa0.net]
vector3Dクラスの内部に
vector2Dクラスは普通は作らないんだぞ
知ってた?
しかし、両クラス共にメンバx,yを保持する
そう、お前らの大っっっっっっっ嫌いな重複だw
しかし、極上のバカでもない限り
vector3Dをvector2D+zで作るやつなんてこの世にいないんだよ
わかるな?

この例ではわかりやすく
XYZで説明してやったが
世の中ってのはこういうもので満ち溢れてるんだよ
xyでもyzでも計算するときがあるのさ
わかりにくいだけで
xyをvector2Dで作ってしまったオブジェクトのyzの計算は不格好なのさ
オブジェクト指向は破綻している
そこをわかった上で付き合うんだ

302 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 00:03:56.21 ID:9UhWNW230.net]
>>287
物に例えるってのは常々ダメだと思うわ、関係ない要素が絡んできて
人に依ってはマイクロウェーブとか出るの?とか思うだろうし
クラス設計としちゃフィールドは構造体と一緒だけどメソッドは…
うん、とりあえず手続き型っぽく作っても良いだろう\(^o^)/
多態性は+演算子の数値なら加算が文字列だと連結になるとかね

C経験はCUIのみという事かな?.NET Frameworkなんか知らん!という事であれば
Visual C++ Windows デスクトップアプリを従来通りWin32で作っても良いと思うけど
手っ取り早くダイアログベースで作成してメッセージハンドラに渡ってきたIDで振り分ける

ぶっちゃけ.NET FrameworkもWin32 APIをラップしてるだけなのでC#も基本は変わらない
フォームデザイナーで弄くってコントロールにイベントハンドラ割り当てるだけ

303 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 00:44:36.48 ID:RsJGf8R10.net]
>>292
制御系のプログラムばかり書いているのです
どうかするとロジアナ見てる方が多いかもしれませんが
パソコンの世界はほとんどわからないです

304 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 01:02:27.00 ID:NripHWV9a.net]
>>293
制御系ならCでも自然とオブジェクト指向的な設計でコード書いてたはずだと思う。

「キーをスキャンしてデバウンス処理を担当するコード」とか「LCDドライバーへの表示データの転送を担当するコード」
とか、そういう仮想機械をコード上にいっぱい作ってたはず。

オブジェクト指向のオブジェクトって要はこの仮想機械のこと。
クラスはそれを書きやすくするための仕組みに過ぎん。
だからたぶん心配してるよりずっと簡単な話だと思うよ

305 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 01:07:11.33 ID:RsJGf8R10.net]
>>294
私の頭の中はオブジェクト指向とは無縁です。

設計そのものに、そんな考え方を取り入れていないので、どこまでも手続き型で考えてしまうのです。
強いて言えば、状態遷移を作るときに少し似たような考え方になるだろうか、という程度ですね

なにをクラスとすれば良いのか、そういうところがピンとこないので、わからないのです。

306 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 01:13:49.60 ID:9UhWNW230.net]
いわゆる組み込み系か、それだと逆にこっちが経験乏しいけど、Cライブラリなら馴染みはあるのかな
するとまずはVisual C++からWindowsコンソールアプリをC/C++ライブラリで作ってみるとかかねぇ?
APIとかはC#にしろMSDN…今はMicrosoft Docs?を見るしかないね、C#ならIntelliSenseにも詳細出る

でもC#からなんか制御するとかだと結局プラットフォームのネイティブAPIや専用ライブラリになるか?
とりあえずオブジェクト指向とかを学びたいのであればC++や他スクリプト言語とかでも良さそうな

307 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 01:15:08.32 ID:NripHWV9a.net]
>>295
でもキュー(リングバッファー)ぐらい実装したことあるでしょ?
端的に言えばあれがオブジェクトの一例っすよ。

データ(配列 + 読み出しポインタ + 書込みポインタ)と、
それをリングバッファーに見せかけるコードの組み合わせ

簡単でしょ

308 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 01:30:35.70 ID:RsJGf8R10.net]
>>296
言語そのものはどれでも良いと考えています
vsのヘルプを読む限り、同じことができてるようですから
どうせなら、c#を勉強してみたいなと考えております

309 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 01:36:56.53 ID:RsJGf8R10.net]
>>297
リングバッファがオブジェクト指向の考え方なのですか。
なるほど。
仮装化したデバイスのようなもの、ということなのでしょうか。ハードディスクのドライバやNICのドライバは確かにアプリケーションからみると仮想的で、実際のハードウェアの持つ機能とは関係なくつかえるようにしますね
少し例えがわかった気がします

ありがとうございました
今日は遅いので、この辺で失礼します



310 名前:デフォルトの名無しさん [2019/01/16(水) 02:56:08.32 ID:JSfUU2TA0.net]
private Task<int> hoge{....}
というメソッドがあって

var t=hoge();
でタスク走らせた後、ちょっと別の処理してから
t.ContinueWith(()=>...);
と継続タスクを付け足した場合、
付け足した時点でhogeが終わってれば
すぐ継続タスクの処理を開始してくれますか?

311 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 08:32:38.24 ID:vAlWKxD3a.net]
>>300
はい

312 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 09:09:41.77 ID:CvIYGZ/W0.net]
なんならTask.CompletedTaskからでもContinueWithできる

313 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 11:29:57.72 ID:O5e9hp9mM.net]
>>299
オライリーのヘッドファーストオブジェクト指向がおすすめ

314 名前:デフォルトの名無しさん [2019/01/16(水) 16:28:16.62 ID:UcQqPOFa0.net]
ついでに、ユニットテストを身につける本をだれか教えてくれんかな
どの入門書もテストについて全く教えてくれんがどうなってんだ・・・・

315 名前:デフォルトの名無しさん [2019/01/16(水) 16:40:21.97 ID:vTKVQdGXF.net]
そのうちテストのテストも書きたくなってくる

316 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 18:30:37.61 ID:rdmn+dmd0.net]
なかなかゲームの自動プレイを実装するの難しいな〜

317 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 19:00:09.87 ID:uHZTYjv/a.net]
>>241 >>245 >>306
>>1

318 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 19:04:33.77 ID:rdmn+dmd0.net]
1は俺の書き込みちゃうでぇ

319 名前:デフォルトの名無しさん mailto:sage [2019/01/16(水) 20:32:03.28 ID:LiM0dr73p.net]
>>303
どうもありがとうございます
java c#を習得している人が前提の書籍のようですね
オブジェクト指向の勉強には良さそうな本で助かります
javaも知らないので、今度丸善にでも行って太刀打ちできそうか、少しみてから判断しようと思います



320 名前:デフォルトの名無しさん [2019/01/16(水) 21:05:07.42 ID:wbo0XsPzd.net]
>>301
>>302
ありがとうございました

321 名前:デフォルトの名無しさん [2019/01/18(金) 05:08:46.83 ID:bjcECFHM0.net]
すまんが、VisualStudio2017についてる.NET Core2.1って、2.2にするにはどうすればいいの?
勝手に入ったんだからVisualStudio周りからアップグレードする方法があって良いような気がするものの・・・・どこにあるんだろ!?
https://dotnet.microsoft.com/download
それともこっからダウンロードしてきて入れちゃえば良いのかな?

322 名前:203 mailto:sage [2019/01/18(金) 07:03:56.21 ID:3+zdHjT80.net]
>>287
動物スーパークラス作って猫クラスと犬クラス作って猫にニャーニャー 犬にワンワンと鳴かせるプログラム作りな
完成したらオブジェクト指向習得

これで月18万の8次請非正規になれるよ
面談では経験8年で勘定系COBOLの経験有りと答えてね

323 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 07:26:09.39 ID:UV6kIYNk0.net]
>>311
VSのインストーラから入れられるのはLTSだからか知らんが今のところ2.1まで
2.2はSDKで入れてプロジェクト毎にターゲットとして指定すればおk

324 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 07:46:49.16 ID:tSI143EMa.net]
>>312
意地が悪いな

325 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 09:51:47.00 ID:LKOsIFRz0.net]
オブジェクト指向は色々勉強するより
ちょっとしたゲームでも作ったほうが分かりやすいと思うわ

モンスターとヒーローを作って相手を攻撃するメソッドと攻撃を受けたときにダメージを受けるメソッドを書いて 終わり

326 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 11:05:46.51 ID:OxZoH0bi0.net]
非同期のファイル検索処理を途中でキャンセルしたいのですが
時間がかかる処理はDirectory.GetFilesなので
CancellationPendingをどこに書いても処理が終わるまでキャンセルされないのですが
どう書けばよいでしょうか
https://dotnetfiddle.net/xYNYrk

327 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 12:09:48.64 ID:FhyCLWa9d.net]
>>316
こういうやつ?
https://qiita.com/Kosen-amai/items/20868649f10b119ceb40

328 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 12:11:43.78 ID:70siMoMg0.net]
>>316
Directory.GetFiles()の代わりにDirectory.EnumerateFiles()を使う

329 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 13:00:12.01 ID:Xg90leRQM.net]
>>315
ゲームはオブジェクトと環境との間のインタラクションが多すぎるからオブジェクト指向を学ぶには適さない
プロでも結局全部グローバルスコープでアクセスできるようにしとけみたいな設計にしかならん



330 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 14:06:54.39 ID:LKOsIFRz0.net]
じゃあやっぱ>>312がベストアイディアだな

331 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 17:53:25.90 ID:3+zdHjT80.net]
俺が先輩なら新人に自動車クラスとタイヤクラス作らせて型継承でタイヤ交換

332 名前:は容易にするようにと課題出す

出来たら6年選手として売る
[]
[ここ壊れてます]

333 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 17:56:23.24 ID:3+zdHjT80.net]
新人言うても30歳超えの中途ね
コスパ良いんだわ
年食ってると従順でパワハラにも耐える

そう言えば20代新人とか見たことない

存在するのかね

334 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 18:53:47.09 ID:LKOsIFRz0.net]
すまんがIT企業の闇と経験年数詐欺の手法はマ板でやってくれんか?
ム板は数年後のプログラミング教育必修化に向けてフレッシュでさわやかな若者向けの板に改装する予定なんだが

335 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 19:22:42.59 ID:LUo6T6YMr.net]
おまえが改装するの?

336 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 19:45:43.10 ID:adSAogxL0.net]
マ板話をム板でするなハゲ

337 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 19:57:21.94 ID:zUd1LnnRd.net]
>>325
ハゲ・ヅラ板の話をム板でやるなよ

338 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 20:48:28.34 ID:LKOsIFRz0.net]
早いところプログラミング必修化してほしいもんだぜ
会社の愚痴とブラック会社アピールが「プログラミングのお話」だと思ってるオッサン多すぎ

339 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 21:54:37.77 ID:v/mpstOM0.net]
IT業界の非正規形態に未来がなさ過ぎて辛い

いかんいかん 楽しい気持ちでラムダ練習せねば



340 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 22:02:21.54 ID:BJ9hxZ250.net]
↓プログラミングを必修化した結果
ttps://pbs.twimg.com/media/DwtF98FUwAIU166.jpg

341 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 22:16:50.60 ID:v/K+38IX0.net]
なんかちがう

342 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 22:41:31.47 ID:yv7JhRUX0.net]
そもそも資格試験は政治家の天下り先がつくってる
いみない

なぜなら資格を作ってるところの役員事態は
知識がないのだから。

343 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 22:57:58.37 ID:1ZiD/8V00.net]
文字列から数字をtmpWとtmpHに抜き出すクラスを作りたいのですがどうしたらいいですか?
演算子記号は+−もある、数字の桁数は不明で小数点もあり、数字が入るときは小文字一字始まり、引数はw or hで抜き出す戻り値を示す。


対象文字
@w900×HH
AWW×h1000
BWW×HH
Cw900/h100
結果 引数がwなら左  hなら右
@tmpW=900 tmpH=WW
AtmpW=WW tmpH=1000
BtmpW=WW tmpH=WW
CtmpW=900 tmpH=1000

344 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 23:04:40.52 ID:qic/InUuM.net]
数字文字列は尻からスキャンが定石か

345 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 23:09:53.93 ID:FQpSYkdr0.net]
正規表現で抜けば?

346 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 23:11:37.85 ID:OxZoH0bi0.net]
>>317
ありがとうございます。調べてみます
>>318
ありがとうございます。しかし同じくキャンセル出来ませんでした

347 名前:デフォルトの名無しさん mailto:sage [2019/01/18(金) 23:58:07.57 ID:JDQsFvp5a.net]
フォルダの中に万単位でファイル作ってGetFiles()テストしたことがあったけど
10年以上前のPCでも非同期にしなきゃならんほど遅くなかったと思ったけどなあ

普通に遅い原因はユーザーコードの方にあるんじゃないの

348 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 00:06:23.94 ID:h3VcH88n0.net]
10年前のPCはそこまで性能悪くないだろ

349 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 00:41:04.18 ID:pEXPsY3Y0.net]
>>332
文字列を×/区切りの前後でsplit
それぞれの先頭がwhなら以降を戻り値



350 名前:デフォルトの名無しさん [2019/01/19(土) 01:20:56.46 ID:2Tiw7zAQa.net]
>>336
誰と話してるの

351 名前:デフォルトの名無しさん [2019/01/19(土) 05:18:33.12 ID:M8Q3zGyy0.net]
>>332
今ちょうど過疎ってるお題スレにちょうど良さげなのでお題スレにコピペさせてもらおう。

352 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 07:28:05.47 ID:+IqL7b8U0.net]
>>334に一票

353 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 08:43:09.59 ID:hupcYVyzM.net]
>>332
Cが難題だな。どうやって実現しようかなぁ

354 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 08:48:50.91 ID:Oo+kKfbG0.net]
indexOfとLowerでイケるんちゃうか?

355 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 08:49:22.84 ID:Oo+kKfbG0.net]
あとsplit

356 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 14:47:58.46 ID:+IqL7b8U0.net]
>>342
確かに w
まあtypoだろうからスルーしてやれよ

357 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 17:07:22.10 ID:FJgPPckz0.net]
脊髄反射で書いたので添削頼む。

public static string[] GetHW(string input)
{
string[] returnval = new string[2];
string[] temp = input.Split('+','-','*','/');

if (temp[0].StartsWith("w", StringComparison.Ordinal))
temp[0] = temp[0].TrimStart('w').Insert(0, "tmpW=");
else if (temp[0].StartsWith("WW", StringComparison.Ordinal))
temp[0] = "tmpW=\" \"";
else
temp[0] = "それ以外の何か";

if (temp[1].StartsWith("h", StringComparison.Ordinal))
temp[1] = temp[1].TrimStart('h').Insert(0, "tmpH=");
else if (temp[1].StartsWith("HH", StringComparison.Ordinal))
temp[1] = "tmpH=\" \"";
else
temp[1] = "それ以外の何か";

return temp;
}

358 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 17:11:32.02 ID:FJgPPckz0.net]
あ、Replaceでよかった。
returnvalも無意味。

359 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 17:39:42.56 ID:FJgPPckz0.net]
1文で
public static string GetHW(string input)
{
return input.Replace("w", "tmpW=",StringComparison.Ordinal)
.Replace("h", "tmpH=", StringComparison.Ordinal)
.Replace("WW", "tmp=\" \"", StringComparison.Ordinal)
.Replace("HH", "tmp=\" \"", StringComparison.Ordinal)
.Replace("+", " ", StringComparison.Ordinal)
.Replace("-", " ", StringComparison.Ordinal)
.Replace("*", " ", StringComparison.Ordinal)
.Replace("/", " ", StringComparison.Ordinal);
}



360 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 18:47:09.81 ID:jmND9WvPa.net]
>>332
質問内容はともかく、プログラマならもうちょっと読み手が推測で補完しなくても
内容を過不足なくきっちり読み取れるような文章を書いた方がいいと思う。

ってういか、率直に言って日本語変だよw

361 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 18:53:12.69 ID:+IqL7b8U0.net]
文章はともかくサンプルデータと結果を書いてるのは褒めてもいいと思うよ
他の質問者もぜひ見習って欲しい

362 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 19:00:37.08 ID:ov6XiAZ2M.net]
競技プログラミングの問題文よりましだろ

363 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 19:36:35.93 ID:PaRH8QDQF.net]
独学手探りで勉強しながら作っていたアプリケーションが一応形になったので
折角だから公開してみようと思っているんですが、
デバッグやライセンス確認など、リリース前に確認する事、の知識が全くないことに気づきました
少額ながら有料公開にしようと考えている為、
最低限これとこれは確認しないと、って物を教えて頂きたいです

364 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 19:39:05.53 ID:9NMu+pMT0.net]
>>352
なんのアプリケーションかも分からないし、答えようがない

365 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 19:41:36.75 ID:FJgPPckz0.net]
有料ってことは、不具合に対する改善要求が来る可能性もあるので、責任の範囲(逃げ道)を明確にしておく。

366 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 19:42:32.49 ID:XwZdf3VkM.net]
>>349
そこは、「あなた、日本語お上手ですね!」で煽らないと

367 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 19:53:49.36 ID:oPTngqYr0.net]
煽ってどうすんだよガイジ

368 名前:デフォルトの名無しさん [2019/01/19(土) 20:31:17.01 ID:h4R+weTi0.net]
>>313
今の所、普通に使っていて2.2にはならないのか
ありがとう

369 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 21:00:12.97 ID:jmND9WvPa.net]
>>332
まあ、適当に忖度して書いてみた
普段正規表現あんまり使う機会がないんでどっかおかしいかもしれん
https://ideone.com/b9pjrG



370 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 21:02:54.87 ID:BW5TF7JUa.net]
>>352
ヘタしたら訴訟沙汰になりかねないからやめとけ
まずはベータ版

371 名前:として無料で配るとかして様子を見るべき []
[ここ壊れてます]

372 名前:デフォルトの名無しさん [2019/01/19(土) 21:59:06.23 ID:+chQE6yt0.net]
>>352
・C#で作ってるならデコンパイルされても大丈夫か確認しておく
・GPL汚染に注意する

373 名前:デフォルトの名無しさん mailto:sage [2019/01/20(日) 23:51:42.85 ID:NEqE5pSC0.net]
ソフトで商売って労力に見合わないな
キラーソフトでも作れればそれだけで暮らせるんだろうけど

374 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 00:00:18.20 ID:lx5Y5NZb0.net]
ニッチな分野か、あるいは既存ソフトより高性能であれば有料でも売れる可能性はある

375 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 01:05:58.77 ID:+LWwKYuDa.net]
業務アプリなら大したスキル無くてもやってることがビジネスとして正しくてちゃんと営業すれば売れるよ
今時ツール系で稼ぐのはまあ無理

376 名前: mailto:sage [2019/01/21(月) 05:02:51.88 ID:BX1YVz9RH.net]
>>362
業務にての使用を公認されるためには、有料(シェア)ソフトの方が有利なようですよ、秀丸とか

377 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 07:23:38.48 ID:EWbXmLTJ0.net]
ASPばかりしてたらWinFormの作り方忘れた
つか今だにWinFormの案件あるのかね
小ツールはコンソールアプリで作っちゃうから勝手が思い出せない

378 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 07:27:48.21 ID:V744VEzgd.net]
>>346
>>348
ありがとうございます!調べてやってみます!

379 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 07:41:57.18 ID:A1e+SXhY0.net]
ASPの案件がある方が驚きだわ



380 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 07:46:49.66 ID:1hBKI8k2D.net]
>>367
大手はWindowsServer入れてる率が多い気がする

381 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 07:54:57.12 ID:BPZ4z+V2d.net]
>>368
ASP.NET(かもしくはASP.NET Core)やろってツッコミじゃね?






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

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

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