X



ふらっと C#,C♯,C#(初心者用) Part137
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん (ドコグロ MM07-2FKJ)
垢版 |
2018/04/06(金) 17:40:19.48ID:oKXVP34zM
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

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

■関連スレ
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/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part136
http://mevius.5ch.net/test/read.cgi/tech/1520057345/

■コードを貼る場合は↓を使いましょう。
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
0851デフォルトの名無しさん (アウアウカー Sa95-9DOT)
垢版 |
2018/05/28(月) 00:33:24.89ID:SRIgyUF4a
データベースを使わないで、インデックスが共通する複数のデータ配列を作りたいときってどういう風な実装が最適なんでしょうか
var A = new int[x]
var B = new int[x]
var C = new int[x]



var E = new int[x]
みたいな感じです
0854デフォルトの名無しさん (アウアウカー Sa95-9DOT)
垢版 |
2018/05/28(月) 07:52:50.79ID:Mf7CKKuIa
>>853
ありがとうございます
助かりました!
0855デフォルトの名無しさん (オッペケ Sr05-cS+N)
垢版 |
2018/05/28(月) 12:27:04.88ID:YifI+gJdr
誰か>>852のエスパーたのむ
0859デフォルトの名無しさん (スッップ Sd33-FAoy)
垢版 |
2018/05/28(月) 20:32:45.18ID:0z7zyrSed
複数のクラスで共通の変数定数を外出しして、
その変数クラスを継承するのって良し悪しで言うとどうでしょうか

is aなのかちと微妙な感じです
内臓名クラスを継承して動物クラスを作ってるような

has aなのでオブジェクトとして渡すべきですか?
0860デフォルトの名無しさん (ブーイモ MM33-GmoF)
垢版 |
2018/05/28(月) 21:46:19.79ID:rs0fZbm/M
>>859
共通の変数などという低い抽象度でクラス設計を考えるのがそもそも間違ってる
実装からクラスを考えると必ず破綻するから、君の今の考え方のまま進む限りはいかなる選択肢も不正解
とはいえ最初から抽象度を上げて設計しろといっても初心者には無理な話だから、気にせず自分の思うように作ればいい
一通りモノ作れるようになったらオブジェクト指向モデリングの書籍を読むことをお勧めする
0870デフォルトの名無しさん (ワッチョイ fb8a-HY9j)
垢版 |
2018/05/29(火) 21:07:37.85ID:FUNbZ4ty0
フォーム間でのデータのやりとりはどうするのが一般的なのでしょうか?
例えば、Form2の表示と同時に、Form1に入力済みのデータをForm2に表示させる場合、今は以下のようにしています。

class Form1
{
 public object Data{get; set;}

 var form2 = new Form2();
 form2.Parent = this;
}

class Form2
{
 public Form Parent{get; set;}

 Load()
 {
  this.Data = Parent.Data;
 }
}
0873デフォルトの名無しさん (ワッチョイ 13d2-XWWR)
垢版 |
2018/05/29(火) 22:58:12.01ID:G7p9dius0
>>869
言語仕様とか環境の変化で不要になった部分をバージョンアップしてるから
今からかうなら最新だけでいい
初版と4.0と最新で内容は被っている
0876デフォルトの名無しさん (ワッチョイ 39b5-cBpb)
垢版 |
2018/05/30(水) 14:44:18.44ID:LltEUg5c0
まあ、C#ならコールバックは登録解除を明示的に行うからスタティックである必要は無いけどな。
でもこれがイベントハンドラからのデリゲートなら話は別だ。
0877デフォルトの名無しさん (ブーイモ MM33-GmoF)
垢版 |
2018/05/30(水) 14:47:38.89ID:WVM+AecNM
>>875
そのSocketオブジェクトに合わせるのが正解
Socketを生で使うサンプルってスキルの低い業務ドカタが書いてたり書かれた時代が古かったりすることが多いので、
C#をよく理解してなくてCやVBの感覚でstaticにしないといけないと思ってるようなのが多い
0885デフォルトの名無しさん (ワッチョイ 4e57-msj4)
垢版 |
2018/06/01(金) 09:05:55.18ID:azdekr4p0
説明不足ごめんなさい。
出力ですが、最終的にはTextBoxの枠ごと印刷したいと考えております。
883の言う単位の入力補完だと思います。

MaskedTextBoxのマスクに####℃と記入し、
「-24.4」等のデータをデータベースから取り出して、入れたところMaskedTextBox.Textが244℃となってしまいました。
このテキストボックスを小数点有りの場合、なしの場合、負の符号が有りの場合なしの場合、「----」の場合、
1桁から5桁+「℃」としてTextBox.Textに出力したいと考えております。

できますか?
0895デフォルトの名無しさん (ワッチョイ fae3-mRcc)
垢版 |
2018/06/01(金) 23:18:54.61ID:fWGAwsr30
前門の虎 肛門の狼
0896デフォルトの名無しさん (ワッチョイ d103-Y2aB)
垢版 |
2018/06/02(土) 00:25:46.86ID:A4SZL/oE0
寒っ
0906デフォルトの名無しさん (アウアウウー Sa09-667V)
垢版 |
2018/06/02(土) 11:42:21.94ID:gRqFSsBQa
OSでメモリはブロックなどで管理されていて要求があったら
要求サイズに合わせてそのブロックの中のさらに細かいブロックなどを払いだしてる
こっちがどうしようとOSでブロックを作ってその中でやりくりしてる

例えそのブロックの中で断片化していて何か不都合あるのか?
0908デフォルトの名無しさん (ワッチョイ 21e3-5Q+M)
垢版 |
2018/06/02(土) 14:25:15.68ID:QJbZaU5f0
リークしてると1ヶ月ぐらいで死ぬじゃん
現状自分でメモリ管理しないとどこで何が確保されてるのかわからないわけで
そういうの確実に管理したいときはc言語のがいいのかなぁ?と
0909デフォルトの名無しさん (ワッチョイ d55d-C2Ni)
垢版 |
2018/06/02(土) 14:34:09.78ID:gayBoTaI0
極めて厳密に管理したいならC/C++でアロケータを自前で書くというのはあり得る
しかしリークという点ではC#よりC/C++の方が遥かにやっちまい易いので, メモリ安全を確保する目的でC/C++で書くのは本末転倒のように思う
0911デフォルトの名無しさん (ワッチョイ 7a8a-sZ2J)
垢版 |
2018/06/02(土) 15:01:44.21ID:fV6b9MUi0
List#Containsの重複判定基準をEquals以外にすることはできないでしょうか?
ListにしたいクラスのEqualsが、別の目的用にオーバーライドされている為、Equalsを使うことができません。
0915デフォルトの名無しさん (ワッチョイ 5db3-7ot6)
垢版 |
2018/06/02(土) 16:03:39.22ID:nL4AUV2I0
>>908
Webサービスか何かを想定してる?
だったらコーディングで対応するんでなく、ロードバランサで複数のアプリケーションサーバに振り分けて
サービスが止まらない様にしつつ、一部のサーバをオンメンテでリブートすべし
0918デフォルトの名無しさん (ワッチョイ 21e3-5Q+M)
垢版 |
2018/06/02(土) 18:04:04.45ID:QJbZaU5f0
実際にメモリリークが起こらないように気をつける術は昔ながらの方法しかない?
プロジェクトでnewするときはインスタンスマネージャー的なのを通して
可能な限りインスタンスを監視するとかそんなの?
0921デフォルトの名無しさん (ブーイモ MMf1-CKCa)
垢版 |
2018/06/02(土) 19:11:03.61ID:1ZPJADB4M
>>918
一時的なオブジェクトはもう必要ないなら握りっぱなしにしないで即座に使い捨てること
中途半端に握りっぱなしにしてるとGCの世代か昇格してメモリ使用量の増加やGCのパフォーマンス低下の原因になる
一方、単寿命オブジェクトのGCは爆速なので、newしたら積極的にすぐ放置すべき
0924デフォルトの名無しさん (ワッチョイ 21e3-5Q+M)
垢版 |
2018/06/02(土) 19:25:12.19ID:QJbZaU5f0
>>921
うーん
爆速ではないなぁ
3分に1回動かしてる処理があるんだけど
強制GCせずにずっと動かしてるとき
メモリ使用量がかなりあがった状態でGCが動くと
3分に一度の処理のタイミングがズレちゃうんだよね
そこで強制GCも十分に一度ぐらいの頻度で動かしてる状態
0927デフォルトの名無しさん (アウアウカー Sa5d-SvXf)
垢版 |
2018/06/02(土) 19:37:34.74ID:KX6MAuAea
ちゃんと設計してればC#でメモリーリークなんて気にすることなんてあるか?
そんなガバガバ設計してるやつがCだったら大丈夫なんだけど、って馬鹿な話誰が信じるよ
0935デフォルトの名無しさん (ワッチョイ 4a15-ZeuL)
垢版 |
2018/06/02(土) 21:10:12.98ID:u/NNd5OV0
未確認飛行のSpan説明みてサンプルコード動かそうとしたんだけど
using System.Memory;すると
CS0305ジェネリック種類 'Memory<T>' を使用するには、1 型引数が必要です。
って叱られるのなんで?
VSもCoreも最新
0938デフォルトの名無しさん (ワッチョイ d696-NLsb)
垢版 |
2018/06/03(日) 17:57:54.97ID:nwnHFAsS0
フォームアプリでマウスクリックでイベントをはっせいさせているのですが、
ある処理ループの実行中はこのクリックイベントの割り込み発生を禁止させたいです。
マウスクリック割り込みイベントを無効化、有効化する方法ってないでしょうか?
0941デフォルトの名無しさん (アウアウカー Sa5d-SvXf)
垢版 |
2018/06/03(日) 18:07:49.08ID:qpwWeWwga
>>938
-=、+=
デザイナーみればわかると思うよ
0949デフォルトの名無しさん (アウアウカー Sa5d-SvXf)
垢版 |
2018/06/03(日) 20:15:38.36ID:OWt1glR4a
非同期で実行した場合とかの抑止とか?とエスパー
0950デフォルトの名無しさん (ワッチョイ 4a15-ZeuL)
垢版 |
2018/06/03(日) 20:19:01.20ID:S4J0YpoT0
>>939
つまりSpanを使うのにusing System;さえすればいいってこと?
ごめんな、クソ素人過ぎて質問がまずいのか

http://ufcpp.net/study/csharp/resource/span/

var s = "abcあいう亜以宇";

var sub = s.Substring(3, 3);
var span = s.AsReadOnlySpan().Slice(3, 3);

for (int i = 0; i < 3; i++)
{
Console.WriteLine((sub[i], span[i])); // あ、い、う が2つずつ表示される
}

を試したいんだけど、できないって話なんだ
レス数が950を超えています。1000を超えると書き込みができなくなります。

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