!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/
■コードを貼る場合はこちら
http://ideone.com/
■前スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
C#, C♯, C#相談室 Part96
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 7633-kUv4)
2021/12/20(月) 11:03:25.88ID:sdn/+VfW035デフォルトの名無しさん (テテンテンテン MM8f-ZwRN)
2022/01/24(月) 12:17:52.32ID:8sRMh2mLM いまいち何がしたいのか分からんが、Validatingの処理を別メソッドでやるようにしてEnterイベントでそのイベント実行すればいいんでないの
継承コントロール作れるなら継承した方がいいけど
継承コントロール作れるなら継承した方がいいけど
36デフォルトの名無しさん (ブーイモ MM8f-X3yx)
2022/01/24(月) 14:24:45.58ID:VRumLvNTM よくわからないが最近のC#は
private メンバーを派生クラスから
アクセス出来るようになったのかね?
19にはprivateと明記されているが
別の世界線の住人かな?w
private メンバーを派生クラスから
アクセス出来るようになったのかね?
19にはprivateと明記されているが
別の世界線の住人かな?w
37デフォルトの名無しさん (アウアウウー Sa4b-DZ2P)
2022/01/24(月) 14:37:40.44ID:zeqExr0Ka privateに格納されてるイベントを呼び出す処理が実装されてるんだよ
それがon〜系の関数でprotectedもしくはpublicになってる
今回はprotectedだから派生してやればそれを呼び出せるということ
それがon〜系の関数でprotectedもしくはpublicになってる
今回はprotectedだから派生してやればそれを呼び出せるということ
38デフォルトの名無しさん (ブーイモ MM8f-X3yx)
2022/01/24(月) 14:51:41.28ID:VRumLvNTM それは、19の時点で公開されている情報では無いな
只の後出しじゃんw
只の後出しじゃんw
39デフォルトの名無しさん (アウアウウー Sa4b-DZ2P)
2022/01/24(月) 14:55:19.40ID:zeqExr0Ka >>16-17 を見てみろ。質問主もon〜を把握してるとこから始まってるんだよ・・・
40デフォルトの名無しさん (ブーイモ MM8f-X3yx)
2022/01/24(月) 15:08:11.62ID:VRumLvNTM ならミスリードは19やね
41デフォルトの名無しさん (ワッチョイ 7fda-Wd2O)
2022/01/25(火) 06:41:35.44ID:iMjZ0/CX0 19で話の流れが変わった事に対して
別の回答を出した24に対して
いきりマウントした27がガイジという結論やな
別の回答を出した24に対して
いきりマウントした27がガイジという結論やな
42デフォルトの名無しさん (ドコグロ MM4f-x+w6)
2022/01/25(火) 09:43:08.82ID:9Tw1d9u5M43デフォルトの名無しさん (ブーイモ MMcf-X3yx)
2022/01/25(火) 10:48:13.94ID:f2t7Ea9PM 基地はNG推奨
44デフォルトの名無しさん (アウアウウー Sa9b-PN0l)
2022/02/05(土) 16:47:04.66ID:tJRnKD74a 構造体の配列のメモリ確保で
データを入れる事は
できますか
A[] ={{1,2,2},{3,4,2},{1,5,6}}
みたいなノリの
お願いいたします
データを入れる事は
できますか
A[] ={{1,2,2},{3,4,2},{1,5,6}}
みたいなノリの
お願いいたします
45デフォルトの名無しさん (アウアウウー Sa9b-PN0l)
2022/02/05(土) 16:51:55.17ID:gB/WrKWla それと多重配列で
初期値データ入れたり
初期値データ入れたり
46デフォルトの名無しさん (アウアウウー Sa9b-icCT)
2022/02/05(土) 17:50:07.67ID:B70fTfWxa A = new int[][] { new int[] { 1, 2, 2 }, new int[] { 3, 4, 2 }, new int[] { 1, 5, 6 } };
47デフォルトの名無しさん (アウアウウー Sa9b-PN0l)
2022/02/06(日) 06:30:33.16ID:SLNZfJCCa それと多重配列で
初期値データ入れたり
初期値データ入れたり
48デフォルトの名無しさん (アウアウウー Sa9b-icCT)
2022/02/06(日) 11:36:56.19ID:PShjp8Rsa 多重配列がどんなか知らないけどできるだろ。ぐぐれ
49デフォルトの名無しさん (ワッチョイ ff33-WCtq)
2022/02/06(日) 15:12:56.93ID:OIlcPbSe0 多重配列とか勝手に用語作って質問するのは良くないよ。
50デフォルトの名無しさん (ワッチョイ 9fad-9RcZ)
2022/02/06(日) 15:21:21.57ID:+LnLbHsI0 コマンドプロンプトで起動するソフトで
コマンドプロンプトだと途中処理取得できるけど
C#上でリアルタイムで途中処理表示させるのって
スレッドを非同期にするやりかたとか考えた方がいいの?
コマンドプロンプトだと途中処理取得できるけど
C#上でリアルタイムで途中処理表示させるのって
スレッドを非同期にするやりかたとか考えた方がいいの?
51デフォルトの名無しさん (アウアウウー Sa9b-icCT)
2022/02/06(日) 15:24:24.54ID:PShjp8Rsa プロセスの標準出力を読むだけ
C#側がシングルスレッドでもリアルタイムに取得して表示できる
C#側がシングルスレッドでもリアルタイムに取得して表示できる
52デフォルトの名無しさん (ワッチョイ 9f89-yHYo)
2022/02/06(日) 17:31:20.88ID:TTEcICQ7053デフォルトの名無しさん (ワッチョイ 9f89-yHYo)
2022/02/06(日) 17:34:23.14ID:TTEcICQ70 >>50
非同期にしなくても表示出来るが非同期の方がスマート
非同期にしなくても表示出来るが非同期の方がスマート
54デフォルトの名無しさん (ワッチョイ b702-zD41)
2022/02/06(日) 20:51:37.74ID:St9v7rC+0 C#で多次元配列とか速度も遅いし普通は使わん
55デフォルトの名無しさん (ワッチョイ ffda-u8OQ)
2022/02/07(月) 00:06:03.73ID:tbXg2wz+0 せやな
56デフォルトの名無しさん (ブーイモ MM8f-uPsg)
2022/02/07(月) 08:00:35.82ID:2lq/vobIM コンソールを開きたまえ
57デフォルトの名無しさん (ワッチョイ 175f-sf5L)
2022/02/07(月) 15:46:58.65ID:zWOfGBGY0 C#を独学で勉強したいんですが何から手をつけたら良いでしょうか
言語はシェルやvbaはできます、Pythonもちょっとだけ
言語はシェルやvbaはできます、Pythonもちょっとだけ
58デフォルトの名無しさん (アウアウウー Sa9b-icCT)
2022/02/07(月) 15:56:11.87ID:ZbbRMlPga なんでc#やりたくなったのか思い出してそのやりたかったことをどうやったらできるかぐぐってやればいい
とりあえずvsインストールしてさっさと始めろ
考えたり人に聞くよりもまずは手動かせ
とりあえずvsインストールしてさっさと始めろ
考えたり人に聞くよりもまずは手動かせ
59デフォルトの名無しさん (ワッチョイ 175f-sf5L)
2022/02/07(月) 16:05:15.62ID:zWOfGBGY0 C#ってvisualstudioのインストールだけで出来るの?
PythonみたいにC#自体はインストール不要なん?
PythonみたいにC#自体はインストール不要なん?
60デフォルトの名無しさん (アウアウウー Sa9b-icCT)
2022/02/07(月) 16:11:45.01ID:ZbbRMlPga vsのインストーラー起動したらc#をインストールするかどうかチェックするところがある
とりあえずやってみりゃ分かる
とりあえずやってみりゃ分かる
61デフォルトの名無しさん (ワッチョイ 175f-sf5L)
2022/02/07(月) 16:17:47.79ID:zWOfGBGY0 なるほど、ありがとうございます
ちなみにやりたいと思った理由はなんとなくの思いつきです
ちなみにやりたいと思った理由はなんとなくの思いつきです
62デフォルトの名無しさん (ワッチョイ 9fad-9RcZ)
2022/02/07(月) 17:33:25.04ID:CWmTnMKY0 最初に画面作る→コード作る
勝手にコード作るから書き換えるときリファクタリングでちゃんとなおさないと
ボタンとの連携が外れたりしてだるい
勝手にコード作るから書き換えるときリファクタリングでちゃんとなおさないと
ボタンとの連携が外れたりしてだるい
63デフォルトの名無しさん (ワッチョイ 1736-Jms/)
2022/02/11(金) 20:18:35.80ID:Wnuvjl9G0 C#EntityFrameworkでテーブルの有無をチェックする方法ってありますか?
今はDbSet<Entity>のFirst()で例外が出たら、で仮チェックしてます
SQL文で書けば良いと言われればそれまでですが、それとは別にLINQや
DbSet<Entity>.Where(x => x.~ = Id);
みたいな方法でチェックする事はできるのでしょうか?
今はDbSet<Entity>のFirst()で例外が出たら、で仮チェックしてます
SQL文で書けば良いと言われればそれまでですが、それとは別にLINQや
DbSet<Entity>.Where(x => x.~ = Id);
みたいな方法でチェックする事はできるのでしょうか?
64デフォルトの名無しさん (ワッチョイ ffbb-Ism9)
2022/02/11(金) 20:31:49.53ID:kVpyHF8c0 わいならSELECT文書くな
65デフォルトの名無しさん (ワッチョイ 37e6-n5CG)
2022/02/11(金) 20:38:37.22ID:dtTIM78z0 Dictionary<string, Func<T, TRESULT>>
みたいな事をやりたいのですが
どう書くのが正解でしょうか?
みたいな事をやりたいのですが
どう書くのが正解でしょうか?
66デフォルトの名無しさん (アウアウウー Sa9b-icCT)
2022/02/11(金) 20:57:51.73ID:vdb8lbDWa 適当な関数宣言をもったinterface作って、それ派生のclassで実装して
dictionary<string, interfacename>?
dictionary<string, interfacename>?
67デフォルトの名無しさん (ワッチョイ 1736-Jms/)
2022/02/11(金) 21:24:52.36ID:Wnuvjl9G0 適当だが書き方の話なら
どこかに書く
bool func(int n) { if (n <= 3) { return true; } else { return false; } }
var a = new Dictionary<string, Func<int, bool>>();
a.Add("test2", func);
bool b2_t1 = a["test2"](1);
bool b2_t3 = a["test2"](3);
bool b2_f5 = a["test2"](5);
ラムダ
a.Add("test1", x => { if (x == 1) { return true; } else { return false; } });
bool b_t1 = a["test1"](1);
bool b_f3 = a["test1"](3);
bool b_f5 = a["test1"](5);
Funcを加工するなら>>66のようにinterface、他オブジェクト型とか識別子渡して型チェックとか?
どこかに書く
bool func(int n) { if (n <= 3) { return true; } else { return false; } }
var a = new Dictionary<string, Func<int, bool>>();
a.Add("test2", func);
bool b2_t1 = a["test2"](1);
bool b2_t3 = a["test2"](3);
bool b2_f5 = a["test2"](5);
ラムダ
a.Add("test1", x => { if (x == 1) { return true; } else { return false; } });
bool b_t1 = a["test1"](1);
bool b_f3 = a["test1"](3);
bool b_f5 = a["test1"](5);
Funcを加工するなら>>66のようにinterface、他オブジェクト型とか識別子渡して型チェックとか?
68デフォルトの名無しさん (ワッチョイ 1736-Jms/)
2022/02/11(金) 21:26:42.58ID:Wnuvjl9G069デフォルトの名無しさん (ワッチョイ 37e6-n5CG)
2022/02/11(金) 22:10:25.35ID:dtTIM78z070デフォルトの名無しさん (ワッチョイ 372f-aqmw)
2022/02/11(金) 22:17:26.15ID:w2aWSXHv0 そもそもなぜテーブルがないとかいう状態になるのか
その設計を見直したほうが良いんじゃね
その設計を見直したほうが良いんじゃね
71デフォルトの名無しさん (ワッチョイ ffbb-Ism9)
2022/02/11(金) 22:20:58.05ID:kVpyHF8c0 あれだろ、ワークテーブルがもし存在したら消したりとか
年度でテーブルを分けたいとかわけわからんこと言われたりとか
そういう用途だろ
年度でテーブルを分けたいとかわけわからんこと言われたりとか
そういう用途だろ
72デフォルトの名無しさん (アウアウウー Sa9b-icCT)
2022/02/11(金) 22:26:34.03ID:vdb8lbDWa >>69
実際どんなのが欲しいのか知らないけどこんな感じでいいんじゃないの?
interface aaa
{
TRESULT bbb<T, TRESULT>(T n);
}
class AAA : aaa
{
public TRESULT bbb<T, TRESULT>(T n)
{
throw new NotImplementedException();
}
}
実際どんなのが欲しいのか知らないけどこんな感じでいいんじゃないの?
interface aaa
{
TRESULT bbb<T, TRESULT>(T n);
}
class AAA : aaa
{
public TRESULT bbb<T, TRESULT>(T n)
{
throw new NotImplementedException();
}
}
73デフォルトの名無しさん (ワッチョイ 17d2-EiVI)
2022/02/11(金) 22:30:29.44ID:Wu/zW80b074デフォルトの名無しさん (ワッチョイ 372f-aqmw)
2022/02/11(金) 22:34:33.50ID:w2aWSXHv0 Dictionary<string, Func<object, object>>ではだめなのか
75デフォルトの名無しさん (ワッチョイ 5289-5DHJ)
2022/02/12(土) 08:20:21.64ID:X2Srr7cu0 >>64
それが1番分かりやすくて単純だ
それが1番分かりやすくて単純だ
76デフォルトの名無しさん (ワッチョイ 9354-WOoO)
2022/02/12(土) 17:09:02.11ID:HCWO3i2I0 .net 6で、DataGridViewにDataSourceをバインドして表示する時、
データ量が多い(約24万レコード)と一時的に応答なしになります。
※データ取得は別スレッドで行っています。
サブフォームで表示しており、処理中はメインフォームも応答なしになりますが、
メインフォームとサブフォームを別スレッドにするみたいなのは無理ですか?
データ量が多い(約24万レコード)と一時的に応答なしになります。
※データ取得は別スレッドで行っています。
サブフォームで表示しており、処理中はメインフォームも応答なしになりますが、
メインフォームとサブフォームを別スレッドにするみたいなのは無理ですか?
77デフォルトの名無しさん (アウアウウー Sac3-9hE7)
2022/02/12(土) 17:25:09.00ID:XcSi1DQ3a VirtualMode=true
にする。その他もろもろ処理加える必要あるからぐぐれ
にする。その他もろもろ処理加える必要あるからぐぐれ
78デフォルトの名無しさん (ワッチョイ 5289-5DHJ)
2022/02/12(土) 18:34:31.92ID:X2Srr7cu079デフォルトの名無しさん (アウアウウー Sac3-B80Q)
2022/02/12(土) 21:15:10.31ID:wWgyF7+Aa 窓を閉じたときに
MethodInvokerの中の処理がまだ実行中で例外出すんだけど
停止させるか完了するまでフォームの廃棄を待つ方法は無いの?
MethodInvokerの中の処理がまだ実行中で例外出すんだけど
停止させるか完了するまでフォームの廃棄を待つ方法は無いの?
80デフォルトの名無しさん (ワッチョイ 122c-ShCo)
2022/02/12(土) 21:27:27.68ID:C+pjCsCl0 一旦FormClosingでキャンセルしたあと完了してから改めてCloseする
81デフォルトの名無しさん (ワッチョイ 3302-rCQD)
2022/02/13(日) 12:57:34.90ID:5Mv4IyiB082デフォルトの名無しさん (ワッチョイ b7d2-fdHv)
2022/02/13(日) 14:18:56.36ID:3OIdnfKh0 >>81
嘘教えんな
ジェネリクス定義側はFunc<T, TResult>みたいにコンパイルに型決まってないだろうが
Func<object, object> とかいうクソみたいな型を使わせようとするな
嘘教えんな
ジェネリクス定義側はFunc<T, TResult>みたいにコンパイルに型決まってないだろうが
Func<object, object> とかいうクソみたいな型を使わせようとするな
83デフォルトの名無しさん (ワッチョイ 122c-ShCo)
2022/02/13(日) 14:35:33.11ID:TxpWrVyK0 dic.Add("a", (int a) => a * 2);
dic.Add("b", (string b) => b + b);
をやりたいって質問であるという想定なんでしょ?
dic.Add("b", (string b) => b + b);
をやりたいって質問であるという想定なんでしょ?
84デフォルトの名無しさん (ワッチョイ 3302-rCQD)
2022/02/13(日) 14:40:02.85ID:5Mv4IyiB0 >>82
なら出来るやり方言ってみろよ
なら出来るやり方言ってみろよ
85デフォルトの名無しさん (ワッチョイ b7d2-fdHv)
2022/02/13(日) 14:40:38.46ID:3OIdnfKh0 いろんな型のFuncを受け付けるようにするならそれ用のclassを作ってしまった方が手っ取り早い
public class MyDictinary<T, TResult> : Dictinary<string, Func<T, TResult>{...}
Funcをなんでも受け付けるようにするなら
public class MyDictinary<TDelegate> : Dictinary<string, Func<T, TResult> where TDelegate: Delegate {...}
どうしてもinterfaceにしなくちゃいけないなら
public interface IMyDictinary<T, TResult> : IDictinary<string, Func<T, TResult>{...}
ごちゃ混ぜのFuncを受け付けるようにするとFunc呼び出し時に大変な思いをするだけだからやらん方がいい
public class MyDictinary<T, TResult> : Dictinary<string, Func<T, TResult>{...}
Funcをなんでも受け付けるようにするなら
public class MyDictinary<TDelegate> : Dictinary<string, Func<T, TResult> where TDelegate: Delegate {...}
どうしてもinterfaceにしなくちゃいけないなら
public interface IMyDictinary<T, TResult> : IDictinary<string, Func<T, TResult>{...}
ごちゃ混ぜのFuncを受け付けるようにするとFunc呼び出し時に大変な思いをするだけだからやらん方がいい
86デフォルトの名無しさん (テテンテンテン MMde-gtE8)
2022/02/13(日) 14:46:43.73ID:ifSJDHUhM ?
>>69はDictionaryいっこにいろんな引数型/戻り値のFuncを入れたいと言ってるみたいだから>>81しかないと思うんだけど・・・
引数型/戻り値型毎に別々のDictionaryにするだけなら、たとえば
var dic1 = new Dictionary<string,Func<int, string>>();
var dic2 = new Dictionary<string,Func<int, int>>();
var dic3 = new Dictionary<string,Func<string, string>>();
みたいにT/TResultの組み合わせに応じて別変数にするだけで解決するような・・?
なんでわざわざ>>85みたいなclassなりinterfaceなりを作る必要があるのかわからない
>>69はDictionaryいっこにいろんな引数型/戻り値のFuncを入れたいと言ってるみたいだから>>81しかないと思うんだけど・・・
引数型/戻り値型毎に別々のDictionaryにするだけなら、たとえば
var dic1 = new Dictionary<string,Func<int, string>>();
var dic2 = new Dictionary<string,Func<int, int>>();
var dic3 = new Dictionary<string,Func<string, string>>();
みたいにT/TResultの組み合わせに応じて別変数にするだけで解決するような・・?
なんでわざわざ>>85みたいなclassなりinterfaceなりを作る必要があるのかわからない
87デフォルトの名無しさん (ワッチョイ 3302-rCQD)
2022/02/13(日) 14:48:17.51ID:5Mv4IyiB088デフォルトの名無しさん (ワッチョイ b7d2-fdHv)
2022/02/13(日) 14:54:01.04ID:3OIdnfKh0 マジで1つのインスタンスに別の型のdelegateが入ればなんでもいい前提なん?
取り出して呼び出すときに引数/返り値型調べないといけないが
取り出して呼び出すときに引数/返り値型調べないといけないが
89デフォルトの名無しさん (スップ Sd32-WC3G)
2022/02/13(日) 14:56:56.20ID:+oV/29aBd DynamicInvoke使えばいい
90デフォルトの名無しさん (テテンテンテン MMde-gtE8)
2022/02/13(日) 15:19:09.62ID:ifSJDHUhM ていうか>>85ってコンパイル通る?
「>」ひとつ付け忘れとかDictionaryのミススペルはともかくとして、
2つめの書き方でT/TResultの型はどこから決まるんだろう?
それとも
public class MyDictinary<TDelegate> : Dictionary<string, TDelegate> where TDelegate: Delegate { }
を意図してるのだろうか
Func<object, object>をクソと言ってるからには引数1つの制約すらつかなくなるこんなクソ以下の書き方を意図してるとも思えないけど・・・
「>」ひとつ付け忘れとかDictionaryのミススペルはともかくとして、
2つめの書き方でT/TResultの型はどこから決まるんだろう?
それとも
public class MyDictinary<TDelegate> : Dictionary<string, TDelegate> where TDelegate: Delegate { }
を意図してるのだろうか
Func<object, object>をクソと言ってるからには引数1つの制約すらつかなくなるこんなクソ以下の書き方を意図してるとも思えないけど・・・
91デフォルトの名無しさん (ワッチョイ 3302-rCQD)
2022/02/13(日) 15:28:36.94ID:5Mv4IyiB0 そもそも、そのDictionary使って何したいかまでは知らんから
それを言えば、もう少しマシな案なりが出てくるとは思うが
それを言えば、もう少しマシな案なりが出てくるとは思うが
92デフォルトの名無しさん (ワッチョイ b7d2-fdHv)
2022/02/13(日) 15:30:03.46ID:3OIdnfKh0 >>90
携帯からやったから酷いミスしてるのは悪かった
T/TResultの型を決めないならって意図で書いてる
当然Func<object, object>と同じで使うときに酷い目に遭うが
Func<object, object> だと引数型がobjectを受け付けないといけない縛りができるから
「いろんな関数を受け付ける」という要件を満たせない
Delegateだとその縛りはなくなる
ラムダを受け付けられなくなるが
携帯からやったから酷いミスしてるのは悪かった
T/TResultの型を決めないならって意図で書いてる
当然Func<object, object>と同じで使うときに酷い目に遭うが
Func<object, object> だと引数型がobjectを受け付けないといけない縛りができるから
「いろんな関数を受け付ける」という要件を満たせない
Delegateだとその縛りはなくなる
ラムダを受け付けられなくなるが
93デフォルトの名無しさん (ワッチョイ d201-b83C)
2022/02/13(日) 15:34:09.27ID:Igq9caCG0 質問者は
1つのDictionaryの中に異なる型を混在させたいという話をしてるのか
1つのDictionaryの中は同じ型のみ入るが、型が異なる複数のDictionaryをジェネリックで統一して扱いたいという話をしてるのか
前者ならジェネリックを使うケースではなさそう
1つのDictionaryの中に異なる型を混在させたいという話をしてるのか
1つのDictionaryの中は同じ型のみ入るが、型が異なる複数のDictionaryをジェネリックで統一して扱いたいという話をしてるのか
前者ならジェネリックを使うケースではなさそう
94デフォルトの名無しさん (ワッチョイ 3302-rCQD)
2022/02/13(日) 16:07:38.09ID:5Mv4IyiB0 単純なインターフェース使う例だとこんなもんかな
受け取る結果の型が決まってるなら、dynamic使わんで済むけど
public interface IJob
{
dynamic Run();
}
public class SomeJob<T1, T2> : IJob
{
public T1 Param1 {get;}
public T2 Param2 {get;}
public SomeJob(T1 param1, T2 param2)
{
Param1 = param1;
Param2 = param2;
}
public dynamic Run() => (dynamic)Param1 + (dynamic)Param2;
}
public static void Main()
{
var dic = new Dictionary<string, IJob>()
{
{"a", new SomeJob<int, double>(2, 3.3) },
{"b", new SomeJob<float, double>(5.5f, 16.612340) },
};
Console.WriteLine(dic["a"].Run());
Console.WriteLine(dic["b"].Run());
}
受け取る結果の型が決まってるなら、dynamic使わんで済むけど
public interface IJob
{
dynamic Run();
}
public class SomeJob<T1, T2> : IJob
{
public T1 Param1 {get;}
public T2 Param2 {get;}
public SomeJob(T1 param1, T2 param2)
{
Param1 = param1;
Param2 = param2;
}
public dynamic Run() => (dynamic)Param1 + (dynamic)Param2;
}
public static void Main()
{
var dic = new Dictionary<string, IJob>()
{
{"a", new SomeJob<int, double>(2, 3.3) },
{"b", new SomeJob<float, double>(5.5f, 16.612340) },
};
Console.WriteLine(dic["a"].Run());
Console.WriteLine(dic["b"].Run());
}
95デフォルトの名無しさん (ワッチョイ 3302-rCQD)
2022/02/13(日) 16:11:15.84ID:5Mv4IyiB0 SomeJobをジェネリックにしたけど、別にIJobを実装したクラス個別に作っても構わない
96デフォルトの名無しさん (ブーイモ MM63-WC3G)
2022/02/13(日) 17:02:55.32ID:7+Po28QvM わざわざinterfaceを定義する意味がわからん
たぶん>>94はdynamic型にキャストしたデリゲートを直接呼び出せることを知らないんだろう
たぶん>>94はdynamic型にキャストしたデリゲートを直接呼び出せることを知らないんだろう
97デフォルトの名無しさん (ワッチョイ 3302-rCQD)
2022/02/13(日) 17:24:19.17ID:5Mv4IyiB0 さすがにそれは判るわw
>>69でinterfaceが判らんって書いてるからサンプルで出しただけ
>>69でinterfaceが判らんって書いてるからサンプルで出しただけ
98デフォルトの名無しさん (ワッチョイ 632f-TxqZ)
2022/02/13(日) 17:47:23.01ID:DvSkIP620 別にインターフェイスを使いたいってわけじゃないだろ
var dic = new Dictionary<string, Delegate>();
Func<int, int> f1 = (i => i + 1);
Func<string, string> f2 = (s => s + "さん");
dic.Add("1", f1);
dic.Add("2", f2);
Console.WriteLine(dic["1"].DynamicInvoke(2));
Console.WriteLine(dic["2"].DynamicInvoke("名無し"));
これでいいんじゃないか
var dic = new Dictionary<string, Delegate>();
Func<int, int> f1 = (i => i + 1);
Func<string, string> f2 = (s => s + "さん");
dic.Add("1", f1);
dic.Add("2", f2);
Console.WriteLine(dic["1"].DynamicInvoke(2));
Console.WriteLine(dic["2"].DynamicInvoke("名無し"));
これでいいんじゃないか
99デフォルトの名無しさん (ワッチョイ 96bb-neei)
2022/02/13(日) 19:33:32.60ID:gSu1aBn10100デフォルトの名無しさん (ワッチョイ 632f-TxqZ)
2022/02/13(日) 19:55:15.91ID:DvSkIP620101デフォルトの名無しさん (ワッチョイ 126a-iSvi)
2022/02/13(日) 20:48:10.88ID:7zxfmdEw0 本当にやりたいことを突き詰めるとそんな面倒なことをしなくてもよい解決方法があったりするのはよくある事よな
今回の件でも当てはまるかどうかは知らんけど
今回の件でも当てはまるかどうかは知らんけど
102デフォルトの名無しさん (ワッチョイ 92ad-Z1WE)
2022/02/15(火) 12:56:44.30ID:XMXX+kQj0 例えばFFMPEGをC#で起動させてるときに
エンコード処理みたいな定期的に値が返ってくるやつって
別スレッドでFFMPEGを走らせて
本スレッドではテキストボックスあたりに出力するようにしたいんだけど
これってFFMPEGの処理が終わるまでメインスレッドはwaitしないとダメってことですよね?
単独スレッドで終了した結果は表示できるんですけど
エンコード処理みたいな定期的に値が返ってくるやつって
別スレッドでFFMPEGを走らせて
本スレッドではテキストボックスあたりに出力するようにしたいんだけど
これってFFMPEGの処理が終わるまでメインスレッドはwaitしないとダメってことですよね?
単独スレッドで終了した結果は表示できるんですけど
103デフォルトの名無しさん (アウアウウー Sac3-9hE7)
2022/02/15(火) 13:01:30.90ID:XQ5fPZCEa そんなことはない
別スレッドで読みだした値をメインスレッドに送って、メインスレッドでその値を表示すればいい
別スレッドからUIに表示しようとしたらエラーになる
別スレッドで読みだした値をメインスレッドに送って、メインスレッドでその値を表示すればいい
別スレッドからUIに表示しようとしたらエラーになる
104デフォルトの名無しさん (ワッチョイ 12e4-EYbL)
2022/02/15(火) 17:00:40.59ID:/St4XHrW0 >>102
本スレッドのTextBox.TextにInvoke使って書き込むんだよ
本スレッドのTextBox.TextにInvoke使って書き込むんだよ
105デフォルトの名無しさん (スプッッ Sd52-fdHv)
2022/02/15(火) 19:16:59.08ID:jLK4fSzed たぶんGUIアプリ作ってるんだろうけど
GUIのデータはメインスレッドしか書き換えちゃダメなルールがある
TextBox.Invokeでメインスレッドに自分のデータ変えてくれってお願いするか、
WPFのBindingならメインスレッドがデータ持ってないからデータ取りに来いってできたりする
GUIのデータはメインスレッドしか書き換えちゃダメなルールがある
TextBox.Invokeでメインスレッドに自分のデータ変えてくれってお願いするか、
WPFのBindingならメインスレッドがデータ持ってないからデータ取りに来いってできたりする
106デフォルトの名無しさん (ワッチョイ 5289-CJof)
2022/02/15(火) 19:24:23.63ID:IqKJXua+0 今のc#はスレッドを安易に使えるがスレッドには深い闇がある。
107名無し募集中。。。 (ワッチョイ ffad-aF3f)
2022/02/20(日) 04:59:16.93ID:gLgXgTw20 c#ってvisual studio でテストする時って
アプリの前回値みたいの記憶できないの?
〇〇フォルダのパスとか記憶したいんだけど
アプリの前回値みたいの記憶できないの?
〇〇フォルダのパスとか記憶したいんだけど
108デフォルトの名無しさん (JP 0H1f-JnE0)
2022/02/20(日) 05:45:33.44ID:9eA/EulNH Windows上だと何日動かしてもメモリ使用量40MBくらいで安定してるプログラムが
(VS2002の診断ツールで確認)
ラズパイのMono上だと徐々にメモリ使用量が増え続けて
1日くらいで4GB到達して落ちるんだけど何故だろう
(VS2002の診断ツールで確認)
ラズパイのMono上だと徐々にメモリ使用量が増え続けて
1日くらいで4GB到達して落ちるんだけど何故だろう
109デフォルトの名無しさん (アウアウウー Sae7-iDSx)
2022/02/20(日) 08:10:15.15ID:k8LvFvhxa タイマーかなんか仕掛けて手動で↓を呼ぶ
GC.Collect(2, GCCollectionMode.Forced, false, true);
それで減らないならMonoのランタイムがそもそもUNCOと思われ。
Unity Profilerで表示されるMonoで使用メモリ量が膨大になってしまう
https://teratail.com/questions/238133
GC.Collect(2, GCCollectionMode.Forced, false, true);
それで減らないならMonoのランタイムがそもそもUNCOと思われ。
Unity Profilerで表示されるMonoで使用メモリ量が膨大になってしまう
https://teratail.com/questions/238133
110デフォルトの名無しさん (ワッチョイ ff89-xC0C)
2022/02/20(日) 08:11:50.49ID:/uCWXFvO0 VS2002?
111デフォルトの名無しさん (ワッチョイ ffad-u5El)
2022/02/20(日) 15:59:54.94ID:gLgXgTw20 dataGridView の中のリストの大きさってどうやって変えるの?
枠の大きさは変えられるんだけど
中のリストだけ小さいままでこまってる
枠の大きさは変えられるんだけど
中のリストだけ小さいままでこまってる
112デフォルトの名無しさん (ワッチョイ b302-mA98)
2022/02/20(日) 23:16:48.82ID:ppLUrwgj0 中のリストという意味がちょっと判らない、列や行の幅の事?
名前にWidthとかHeightが含まれるプロパティ片っ端から弄ってみたら
名前にWidthとかHeightが含まれるプロパティ片っ端から弄ってみたら
113デフォルトの名無しさん (アウアウウー Sae7-7p3p)
2022/02/21(月) 19:22:27.56ID:4hCK79/5a var form = new Form(){
Text = "たいとる"
FormBorderStyle = FormBorderStyle.FixedDialog
};
みたいに書けるやつ
一見VBのwith文っぽいけどプロパティの代入行為しかできなくて中途半端
Text = "たいとる"
FormBorderStyle = FormBorderStyle.FixedDialog
};
みたいに書けるやつ
一見VBのwith文っぽいけどプロパティの代入行為しかできなくて中途半端
114デフォルトの名無しさん (ワッチョイ ff6a-nAeH)
2022/02/22(火) 10:14:36.95ID:Q9cfD2FD0 そら、初期化のために用意されているものなんだからそういうもんだろ
115デフォルトの名無しさん (ワッチョイ cf63-3QhW)
2022/02/22(火) 13:36:13.33ID:j1m5S7Tk0 オブジェクト初期化子って名前を知らないとwith的なもんかと思ってしまうのかも知れないね
116デフォルトの名無しさん (テテンテンテン MM7f-lT30)
2022/02/22(火) 15:45:45.85ID:vNlU0s1vM VBのWith文読み難いから出来んでいい
117デフォルトの名無しさん (ワッチョイ ff89-xC0C)
2022/02/22(火) 15:53:33.83ID:PEuqNSu60 vb.netのオブジェクト初期化子はWithなんだよね。
冗長だ。
冗長だ。
118デフォルトの名無しさん (アウアウウー Sae7-8E80)
2022/02/22(火) 16:15:23.63ID:gr38xJ4ba c#のは同じような書き方でも意味が変わって一貫性のようなものがない(ように一見思える)
var form = new Form()
{Text = Text};
form.click += delegate
{Text=Text;};
vbのは普通の命令としてもwithがあり、そこに囲まれてる変数の頭にピリオドを付けるという書き方の一貫性のようなものがあるからな
どっちが初心者に優しいかと言えば今でもvbと感じる(vbがいいとは言ってない)
var form = new Form()
{Text = Text};
form.click += delegate
{Text=Text;};
vbのは普通の命令としてもwithがあり、そこに囲まれてる変数の頭にピリオドを付けるという書き方の一貫性のようなものがあるからな
どっちが初心者に優しいかと言えば今でもvbと感じる(vbがいいとは言ってない)
119デフォルトの名無しさん (ワッチョイ 6fe9-EcOz)
2022/02/23(水) 12:07:24.23ID:n7YEN9KD0 フレームワークの話でしょうが、フォームアプリでモーダルフォームの外を
クリックした時に、モーダルフォームを閉じる事って出来るでしょうか?
スマホのUIによくある挙動ですが、同等の動きを実現出来ないかなと。
クリックした時に、モーダルフォームを閉じる事って出来るでしょうか?
スマホのUIによくある挙動ですが、同等の動きを実現出来ないかなと。
120119 (ワッチョイ 6fe9-EcOz)
2022/02/23(水) 12:10:24.55ID:n7YEN9KD0 初心者板の内容でした。
失礼しました。
失礼しました。
121デフォルトの名無しさん (ワッチョイ ff02-9L8B)
2022/02/23(水) 12:26:47.20ID:n4QLtIZ70 薄毛や抜け毛にお悩みなら、発毛専門の*****へ。
一人ひとりの薄毛・脱毛原因を正確に突き止め、その原因を解消する独自の発毛システムを提供しています。
一人ひとりの薄毛・脱毛原因を正確に突き止め、その原因を解消する独自の発毛システムを提供しています。
122デフォルトの名無しさん (ワッチョイ cf2c-hSEA)
2022/02/23(水) 19:02:33.81ID:wKfqGXJ00 たぶん画面全体に、透明のレイヤーでも貼るのだろう
それで、そのレイヤーがクリックイベントを受け取れる
それで、そのレイヤーがクリックイベントを受け取れる
123デフォルトの名無しさん (ワッチョイ cf10-hSEA)
2022/02/23(水) 20:18:19.67ID:Mz9SDh4V0 すいません 教えてください
文字列変数の中に 変数をしてしておいて 実行時に指定する方法ありますか?
例:
目覚まし時計プログラムで
9:00の時
9:00になりました。 おはようございます。
12時の時
お昼です 12:00になりました。
って 入れ替えたいのだけど
$Time になりました。おはようございます。
12時の時の文字列は
お昼になりました$Timeになりました。
って指定しておき $Timeをあとから指定したいみたいな方法です。
文字列変数の中に 変数をしてしておいて 実行時に指定する方法ありますか?
例:
目覚まし時計プログラムで
9:00の時
9:00になりました。 おはようございます。
12時の時
お昼です 12:00になりました。
って 入れ替えたいのだけど
$Time になりました。おはようございます。
12時の時の文字列は
お昼になりました$Timeになりました。
って指定しておき $Timeをあとから指定したいみたいな方法です。
124デフォルトの名無しさん (ワッチョイ b378-9yE7)
2022/02/23(水) 20:28:47.29ID:RBoSgh/A0 Replace("$Time", "12:00")
125デフォルトの名無しさん (ワッチョイ ff6a-nAeH)
2022/02/23(水) 20:56:09.29ID:77XR+UNq0126デフォルトの名無しさん (ワッチョイ b35f-nZx7)
2022/02/23(水) 21:57:54.53ID:6Rc20OyP0 埋め込む文章も変えたいみたいだから
DateTimeによって適したフォーマット用文字列を返すようにして、その後string.Format()するとか
DateTimeによって適したフォーマット用文字列を返すようにして、その後string.Format()するとか
127デフォルトの名無しさん (ワッチョイ ff89-xC0C)
2022/02/24(木) 06:20:18.96ID:1wBDmGBO0 >>122
Webじゃないから難しいかな
Webじゃないから難しいかな
128デフォルトの名無しさん (ワッチョイ cfbb-iK/E)
2022/02/24(木) 10:51:32.90ID:N/yjILul0129デフォルトの名無しさん (ワッチョイ f32f-hSEA)
2022/02/24(木) 21:50:55.08ID:G5PhgONP0 >>119
Deactivateイベントで拾えないか?
Deactivateイベントで拾えないか?
130デフォルトの名無しさん (ワッチョイ cf10-iDSx)
2022/02/24(木) 22:02:34.13ID:eVS3l/k90131デフォルトの名無しさん (ワッチョイ cf2c-hSEA)
2022/02/25(金) 14:06:14.20ID:Eg3DloqN0 Ruby on Rails では、ERB(Embedded Ruby)で、何の文書にも、Rubyのコード片を埋め込める
例えば、a.rb 内で、ary = [ "a", "b" ]
と定義して、ERB のresult( binding )で、
この文脈を他のファイルへ、バインドできる
b.html.erb 内で、<% 〜 %>, <%= 〜 %> を使って、Rubyのコード片を埋め込む
<% ary.each do | elem | %>
<p><%=h elem %></p>
<% end %>
出力ファイル、b.html
<p>a</p>
<p>b</p>
他にも、カスタムフォーマットを自作して、その形式を日本語辞書に登録して、呼び出せる
ja:
time:
formats:
medium: "%Y年%m月%d日 (%a) %H:%M"
と定義したら、b.html.erb 内で、
<%=l( Time.current, format: :medium ) %>
と書くと、
出力ファイル、b.html
2022年02月25日 (金) 13:55
まあ、コミュニティーが配布している日本語辞書に、
最初から、幾つかの形式が登録されているから、自作する事は少ない
例えば、a.rb 内で、ary = [ "a", "b" ]
と定義して、ERB のresult( binding )で、
この文脈を他のファイルへ、バインドできる
b.html.erb 内で、<% 〜 %>, <%= 〜 %> を使って、Rubyのコード片を埋め込む
<% ary.each do | elem | %>
<p><%=h elem %></p>
<% end %>
出力ファイル、b.html
<p>a</p>
<p>b</p>
他にも、カスタムフォーマットを自作して、その形式を日本語辞書に登録して、呼び出せる
ja:
time:
formats:
medium: "%Y年%m月%d日 (%a) %H:%M"
と定義したら、b.html.erb 内で、
<%=l( Time.current, format: :medium ) %>
と書くと、
出力ファイル、b.html
2022年02月25日 (金) 13:55
まあ、コミュニティーが配布している日本語辞書に、
最初から、幾つかの形式が登録されているから、自作する事は少ない
132デフォルトの名無しさん (ワッチョイ cfbb-s8XF)
2022/02/25(金) 15:06:52.58ID:8px/N21n0 Rubyって使ったことなかったけど、
それAsp.netにそっくりやね
それAsp.netにそっくりやね
133デフォルトの名無しさん (ワッチョイ 5ae4-sFH0)
2022/03/01(火) 13:52:40.14ID:4BvRS+UW0 Console.writeline()はスレッドセーフでないというのは本当でしょうか?
今までシングルスレッドで動いていたプログラムを一部の処理だけマルチスレッドで動作するように変更中です
Console.writeline()の呼び出し箇所を全て変更する必要がありますか?
今までシングルスレッドで動いていたプログラムを一部の処理だけマルチスレッドで動作するように変更中です
Console.writeline()の呼び出し箇所を全て変更する必要がありますか?
134デフォルトの名無しさん (ワッチョイ 0a89-d1gR)
2022/03/01(火) 13:56:54.75ID:VTZdDdWR0 スレッドセーフです
135デフォルトの名無しさん (ワッチョイ de63-v7rK)
2022/03/01(火) 20:21:42.35ID:OUtPpYxS0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【フジテレビ】『サン!シャイン』3月で終了 放送わずか1年… 谷原章介MC起用も 視聴率低迷、3%台の壁を越えれず 後継番組はなし [冬月記者★]
- 【話題】おでんの好きな具は?! 「だいこん」「たまご」「もち巾着」「ちくわぶ」「こんにゃく」「牛すじ」★2 [ひぃぃ★]
- 【社会】丸亀製麺12月24日は15時30分で閉店 従業員とその家族のため [あずささん★]
- チキンラーメンやカップヌードル、来年4月から5-11%値上げ…袋麺の日清ラ王などは内容量減らす ★2 [蚤の市★]
- 【文春】松岡昌宏が「日本テレビへの戸惑い」を語った!「鉄腕DASHの出演について、我々に進退を決める選択肢はないんだなと思った」 [Ailuropoda melanoleuca★]
- カルボナーラ論争勃発…イタリアの農相がイタリア風の商品に“怒りの投稿” [夜のけいちゃん★]
