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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 14:57:21 ]
このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、
勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。

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

前スレ
ふらっとC#,C♯,C#(初心者用) Part43
pc12.2ch.net/test/read.cgi/tech/1248573707/

563 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 00:24:33 ]
ループを一つ重ねるだけだと思うけど?
// 拡張メソッドならExceptがあるけど、比較にラムダ式使えないのは面倒だなー

564 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 00:26:01 ]
>>562
質問とは直接関係ないがStringBuilder使え。
んで、ループをforeachやめてforの2重ネストループにしろ

565 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 00:27:34 ]
もちろんforeachのがわかりやすいならそれの2重ループでも構わん

566 名前:デフォルトの名無しさん [2009/09/08(火) 00:29:25 ]
DxLib3.0誕生

567 名前:デフォルトの名無しさん [2009/09/08(火) 00:32:12 ]
>>560
見てみましたが3Dに特化した話でした

568 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 00:36:55 ]
>>566
むしろ今までDX7だったことに驚いた。

>>562
もしコードみてわからんかったらもっかい聞け。

string[] menuitems = {"肉まん","あんまん","ピザまん","茄子","ゴーヤいり卵焼き"};
System.Text.StringBuilder favoritemenu = new System.Text.StringBuilder();

foreach(string item in menuitems) {
foreach (string dislikeitem in dislikeitems)
{
if (!item.Contains(dislikeitem) && !favoritemenu.Contains(item))
{
favoritemenu.Append(item + "\r\n")
}
}
}
}

569 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 00:46:38 ]
こういうスレだと
長い変数って読むの面倒くさくなるけど
じっさいのコーディングだと普通に長い名前つけるよね

570 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 01:00:39 ]
面倒だからとても短い変数名にしてしまう

571 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 01:03:34 ]
読むのが面倒になるほど長い変数名って、可読性落ちて本末転倒じゃね?

変数名が長くなるのって、関数の粒度が大きすぎる時に起きやすい気がする。
適切に分割して関数にちゃんと名前つけてれば、長い変数名使わなくても十分分かりやすいと思う。



572 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 01:11:18 ]

ある程度変数長ければ
MenuItemsとかにした方が多少自分の命名ルール破っても読みやすい気がする

573 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 02:27:56 ]
>>564、565
配列と配列なので、

foreach(string item in menuitems) {
foreach(string dislikeitem in dislikeitems) {

のように重ねて書けばよいのかと思ったのですが、
それだと、
あんまん-にがうりの組み合わせであんまんがヒットしてしまいます。
(とりあえずforeachで実装。)

>>568
ゴーヤいり卵焼きがヒットします。

あとStringBuilderにはContainsがないそうで、uniqは別途処理する必要があるみたいです(それはできます)。


574 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 02:54:09 ]
いきなりコード書くよりまず手順を日本語で書いてみるのを勧めてみる

1.メニューの一つ目を手に取る。itemとする。
2.嫌いなメニューの一つ目を手に取る。dislikeとする。
3.dislikeがitemに含まれているか確認する。
 含まれていなければ次の嫌いなメニューの確認。
 含まれていれば、このitemは無視する。以降の嫌いなメニューの確認は不要。次のメニューへ。
4.全ての嫌いなメニューに含まれていないことが確認できたら、そのitemを出力する。
 次のメニューへ。

さあこのままコード化。
3で含まれていた場合に次のメニューに飛ぶのがちょいと単純ではないけどな。

575 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 03:13:56 ]
C#のHashtableをRubyみたいに簡単に保存ファイルにする方法ってありませんか?

576 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 03:15:19 ]
質問と一切関係ないが話の流れ的に
>>562にはぜひキャメルケースとか憶えてほしい。

577 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 03:46:44 ]
string[] menuitems = { "肉まん", "あんまん", "ピザまん", "茄子", "ゴーヤいり卵焼き" };
string[] dislikeitems = { "にがうり", "ゴーヤ", "あんまん" };
IEnumerable<string> diffSet = menuitems.Except(dislikeitems);

string favoritemenu = string.Join("\r\n", diffSet.ToArray());
MessageBox.Show(favoritemenu);

上で出てるけど、LINQ使っていいならExceptで簡単に差集合作れる。
あとはToArrayで配列にして、Joinで結合するだけ。

578 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 07:02:56 ]
HashtableってSerializableAttributeついてるからBinaryFormatter使えんじゃないの
試してないけど

579 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 08:36:23 ]
>>567
3D上の板として2Dを描画するのが最近では普通になってるんだよ

580 名前:デフォルトの名無しさん [2009/09/08(火) 09:35:06 ]
>>589
いや3Dの中でも縦回転以外の回転とかメッシュとか固定小数点化での高速化とか、ほんとうに3Dのためのトピックばかりで・・・

homepage2.nifty.com/tsugu/sotuken/rotation/

ここのサンプルでなんとか自作できそうです。
あとはLockBitでさらに高速化できるかな・・・という感じです。

581 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 09:43:38 ]
SetPixelやGetPixelは試すだけ無駄
高速化というよりLockBits使わないと使い物にならない



582 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 10:59:52 ]
ref DataRow を受け取るメソッドがあって、そこに型付DataSetのDataTableのrowを
渡したいのですが、どうやってCastすればいいんでしょうか?

UserDataSet.TESTTBLRow r = UserDataSet.TESTTBL.NewTESTTBLRow();
foo(ref r);

---

private void foo( ref DataRow r )

foo()の中でDataRowの中身を変更しています

583 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 11:02:53 ]
refなんかいらん
値型と参照型について勉強しなさい

584 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 11:05:51 ]
>>578
ありがとうございます試してみます

585 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 11:11:56 ]
>>577
それだとゴーヤ入り卵焼きが食卓に並んじゃう!

586 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 11:24:37 ]
ゴーヤ入り卵焼きからゴーヤを皿の脇によけて食べればいいじゃない

587 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 11:43:17 ]
>>583
ありがとうございます。refを削除してブイルドは通るようになりました。
ただ、次のようなコードを書いたときに、

---呼び出し元

foo( UserDataSet.TESTTBLRow r );

int a = r.HOGEHOGE; ← ここでエラー

--呼び出され元

private void foo( UserDataSet.TESTTBLRow row )
{
 row = UserDataSet.TESTTBL.FindByPKEY("xxxx"); // (1)
return;
}

FindByをした直後に row を見ると、個々のColumnには確かに値が入っているんですが、
その後r.HOGEHOGEを見るとDBNullに成っているようなのです。

(1)のところでイコール式で代入しているのが駄目なんでしょうか?

588 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 11:47:35 ]
いいから黙って値型と参照型について調べてこい
なぜ駄目か理解しないと意味がない

589 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 11:53:06 ]
参照型だと代入演算子で代入されるのはポインタとうい認識なのですが。
つまり

1) FindBy〜 でメモリ上のどこかにオブジェクトが作られて、オブジェクトへのポインタが返る
2) (1) のところで row = 〜〜 としているので、この時点では row は FindBy〜が作った
オブジェクトの領域を指している
3) 参照型なので、foo() の引数でやり取りされるのはポインタ。つまり r はFindBy〜で確保
されたオブジェクトの領域を指している

と言う感じで、r は FindBy〜で確保された場所をそのまま指しているのでは???

590 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 12:03:06 ]
ポインタはポインタ 参照型は参照型

そもそも何かを返したいなら返値で返せばよい

591 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 12:09:27 ]
>>590
答えになってないw



592 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 12:26:27 ]
var x = new Hoge(); // Hogeの実体を作り,紙xにその住所を書く
foo(x); // 紙xに記されている住所を新しい紙yに書き写してfooに渡す
Console.WriteLine(x.Value);//100が出力される

void foo(Hoge y) { //この時点でxとyは別の紙だが書かれている住所は同じ
y.Value = 100; // yに記されている住所をもとにHogeの実体を探し,Valueプロパティに100を代入する
y = new Hoge(); // yに書かれている住所を消しゴムで消して新しく作られたHogeの実体の住所を書く
y.Value = 200; // 初めに作られたHogeには影響しない
}
説明するのは難しいなあ

593 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 12:33:57 ]
>>587
その例で言うとですね、変数rと変数rowには同じobjを指し示すアドレスが入っています。
だからrow.XXXXX を変更すると r.XXXXX も同じように変更される(ように見える)のは貴方が
認識しているとおりです。

ただし、変数rの実体と変数rowの実体は別物です。ここに注意しましょう。
だから変数rowそのものの値を書き換えてしまうと、もはや「rowが示す先のobj」と「rが示す先
のobj」は別物になってしまうんです。

あくまで、「rowが示す先のobjの内容をrが示す先のobjに代入」しなければいけません。
で、そういう場合のために通常Copy()メソッドが用意されていたりするんですが、もし無ければ
自分で全要素コピーする必要があります。ディープコピーとかで調べてみて下さい。

594 名前:デフォルトの名無しさん [2009/09/08(火) 12:52:49 ]
>>581
まじすか! ありがとうございます。

595 名前:デフォルトの名無しさん [2009/09/08(火) 15:04:47 ]
BeginInvoke, EndInvokeを用いたスレッドからの例外について質問です。
以下のプログラムにて、BeginInvokeによって呼び出されるDoWork内の例外を、メインスレッドで
キャッチしてやるにはどうしたらいいのでしょうか?

Main()内のEndXXX呼び出しでキャッチ出来ると思っていたのですが、どうやら駄目なようです。

改行が多すぎると怒られたので、プログラムは次のレスに貼ります。

596 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 15:07:08 ]
static IAsyncResult BeginXXX(AsyncCallback cb){
Action f = DoWork;
return f.BeginInvoke(cb, null);
}

static void EndXXX(IAsyncResult ar){
AsyncResult res = (AsyncResult)ar;
Action del = (Action)res.AsyncDelegate;
del.EndInvoke(ar);
}

static void DoWork(){
throw new System.Exception("例外っす");
}

static void Main(string[] args){
AsyncCallback cb = (ar) =>{
try{
EndXXX(ar);
}
catch (Exception ex){
Console.Write(ex.Message);
}
};
BeginXXX(cb);
Console.ReadKey();
}

597 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 15:29:04 ]
何故メインスレッドでcatchしなければならないのか

598 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 15:34:22 ]
コールバックではなく、メインスレッドでEndXXXを呼び出せばいい

599 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 16:22:36 ]
>>574
できました。
これを見る前に、自分で考えたので、一日かかっちゃいました。
すこしロジックが違いますが、これで動くようです。
ありがとうございました。
string[] dislikeitems = {"にがうり","ゴーヤ","あんまん"};
string[] menuitems = {"肉まん","あんまん","ピザまん","茄子","ゴーヤいり卵焼き"};
string favoritemenu = "";
bool favorite;
foreach(string item in menuitems) {
favorite = false;
foreach(string dislikeitem in dislikeitems) {
if (item.Contains(dislikeitem)) favorite = true;
}
if (favorite == false && !favoritemenu.Contains(item)) favoritemenu = favoritemenu + item + "\r\n";
}
MessageBox.Show(favoritemenu);

>>576
キャメルケース?
調べてみます。

>>577
LINQは、まだ使ったことがないので、これを機会に勉強します。
ありがとうございました。
…あ。でもこれって、ゴーヤいり卵焼きも入っちゃいますよ。
と、585さんもおっしゃってました…。
>>586
そうか、その手があるか。って、そうじゃなくって。
LINQでゴーヤいり卵焼きをのぞく方法も教えてください。


600 名前:595 mailto:sage [2009/09/08(火) 16:26:42 ]
失礼しました、デバッグ環境だとcatchしてもコードは停止するのですね…。
ちゃんとメインスレッドでcatchしてるようです。

601 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 19:07:08 ]
してねーだろw
何が起こってるか理解しろよ。




602 名前:577 mailto:sage [2009/09/08(火) 19:16:34 ]
>>599
ゴーヤを外すなんてけしからん!真夏には必須だ!

string[] menuitems = { "肉まん", "あんまん", "ピザまん", "茄子", "ゴーヤいり卵焼き" };
string[] dislikeitems = { "にがうり", "ゴーヤ", "あんまん" };

var diffSet = from x in menuitems
where dislikeitems.All((y) => !x.Contains(y))
select x;

string favoritemenu = string.Join("\r\n", diffSet.ToArray());
MessageBox.Show(favoritemenu);

603 名前:デフォルトの名無しさん [2009/09/08(火) 19:32:01 ]
InfoPath2007とC#の組み合わせで開発をしています。

入力した文字列をSQLのWhere句に入れて、
取得された結果を動的にドロップダウンリストに入れたいのですが、
テキストボックスには結果が返ってくるのですが、
ドロップダウンリストは変化がありません

while (myReader.Read())
{
this.MainDataSource.CreateNavigator().SelectSingleNode("/my:travelRequest/my:d取引先名", NamespaceManager).SetValue(myReader.GetString(0)); ←こっちがドロップダウン
this.MainDataSource.CreateNavigator().SelectSingleNode("/my:travelRequest/my:d取引先_担当者", NamespaceManager).SetValue(myReader.GetString(1) + " / " + myReader.GetString(2)); ←こっちがテキストボックス、結果返ってくる
}

すみません、どなたか教えてください。

604 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 19:54:51 ]
>>601
どういう意味で?

605 名前:デフォルトの名無しさん [2009/09/08(火) 20:01:19 ]
なんで
トライ、キャッチなんだよ。

エラーとサクセスみたいなのでいいだろうが。


606 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:02:41 ]
>>601
msdn.microsoft.com/ja-jp/library/d14azbfh.aspx

この話でしょ。

607 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:03:18 ]
は?

608 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:05:01 ]
>>605
ダサい。

609 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:24:20 ]
エラー投げるんだからキャッチで良いんじゃない。

610 名前:601 mailto:sage [2009/09/08(火) 20:24:48 ]
言葉足らずだったかな。
>ちゃんとメインスレッドでcatchしてるようです。
ここに対して言った。


611 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:27:01 ]
VS2005、C#なんですが

pictureBoxの画像をマウスドラッグでgoogleMapのように滑らかにスクロールさせる方法ってありますか?
またはこのような実装を行う方法ってありますか?



612 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:27:01 ]
>>596
>Action f = DoWork;
>return f.BeginInvoke(cb, null);

へえ、こんな風にかけるんか

613 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:29:58 ]
>>612
俺もC#勉強中でこの書き方は初めて見た。
一般的にはどうかくんだろう。誰か教えて。

614 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:39:00 ]
>>613
マルチスレッドのやり方は幾つかあるし正着ってのはないんじゃないかな。
デリゲートに包むってのはそのうちの一つに過ぎないわけで。


615 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:40:25 ]
>>613
非同期デリゲートでググれ

ちなみに、silverlightではサポートされてないので、
コンパイルエラーにはならないが、実行時にエラーが出るので注意

616 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 20:58:28 ]
>>614-615
ガイドサンクス

617 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 22:02:52 ]
>>576
キャメルケース。パスカル方式のことでしたか。了解しました。
string[] menuItems = {"肉まん","あんまん","ピザまん","茄子","ゴーヤいり卵焼き"};
ってことですね。
っていうか、なんでそう書かなかったんだろ。
ふだんはそう書いているんですが。

>>602
LINQの一端に触れた気がします。
fromとかinとかwhereとかselectというのが、LINQの書式なのですね。
まだ充分じゃないですけど、foreachをネストする書き方にくらべて、圧倒的にスマートなことはわかりました。
ありがどうございます。


618 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 22:06:36 ]
Camel形式とPascal形式は違う
camelCase PascalCase

619 名前:デフォルトの名無しさん mailto:sage [2009/09/08(火) 23:51:21 ]
>>603
コードが読みにくい。
まさか実際のソースもそんな書き方して無いよね?
趣味で作ってるのならいいんだけどさ。

で、問題の方だけど、ドロップダウンリストに値を設定してるところがダメなんじゃない?
InfoPathは使ったこと無いからよくわからないけど。


620 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 00:48:01 ]
>>618
一応、これも書いておかないと

Upper Camel = Pascal
Lower Camel = 狭義のCamel

621 名前:デフォルトの名無しさん [2009/09/09(水) 09:22:35 ]

Bitmap BmpBuf = new Bitmap("C:\\2008052314460001.jpg");
Picture1.Image = BmpBuf;


画像が表示されません



622 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 09:29:10 ]
そうか

623 名前:デフォルトの名無しさん [2009/09/09(水) 09:35:56 ]
せめてヒントだけでも ><。。

624 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:20:41 ]
もうimagelocation でやれwwwww

625 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:41:29 ]
>>621
デバッグしてそこ実行時にBmpBufが有効か見てみたか?
Picture1ってどのコントロール?

626 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:42:26 ]
"C:\\2008052314460001.jpg"

@"C:\2008052314460001.jpg"
こうしたい

627 名前:デフォルトの名無しさん [2009/09/09(水) 10:48:28 ]
>>625
BmpBufはnullでなくサイズプロパティは読み込んだ画像のサイズでした
>>626
あーそういう意味だったのか @使います



628 名前:デフォルトの名無しさん [2009/09/09(水) 10:50:00 ]
>>625
Picture1はPictureBoxです

629 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 10:53:33 ]
それはちゃんとFormに貼り付けられてるのか
何かのコントロールの後ろに隠れてないか
サイズが0,0になってたりFormの表示範囲外にいってたりしてないか

630 名前:デフォルトの名無しさん [2009/09/09(水) 11:18:33 ]
>>629
もう一度一から貼り直してやってみます
コードは間違ってはいませんよね?

再描画されないかもしれないのはおいといて

631 名前:デフォルトの名無しさん [2009/09/09(水) 11:23:00 ]
>>630
うまくいきました!!

デザイナのコードが壊れてたみたいです



632 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 11:23:16 ]
>>611
paintでGraphicsのDrawImage使うといい。

633 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:12:39 ]
C++のデザパタに片足突っ込んだ程度の経験なんですが、
今回.NET Framework 4.0が面白そうな事になってるのを聞き及び、C#に手を出してみようかと思っています。
C#のオススメの教本とかあったら教えてもらえませんでしょうか?

634 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:20:31 ]
.NET4ってそんなに面白そうなフィーチャーあったっけ
DLRやPLINQなんか.NET触ったことない人には全く分からないだろうし

635 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:27:34 ]
>>632
ドラッグ中MouseMoveイベントで毎回それやってpictureBoxリフレッシュすると滑らかにならず・・・

636 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 12:49:42 ]
>>635
どんな環境でどうやってんの?
こっちで試す限りでは普通になめらかに動くよ。
Bitmap毎回作ってるとか?

637 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 13:43:13 ]
>>636
よっぽどでかくなきゃそれでもまぁいけると思うぞ
Disposeしてなさそうだけど(Disposeいるっけ?)

638 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:31:59 ]
breakについて教えてください。
for (int i = 0; i < 10; i++) {
foreach(string line in lines) {
if {//条件。
break;
}
}
}
で、ifの条件が一致したとき、この位置にbreakを書くと、foreachは終了しますが、外側のforは終了しません。
どこに書けば、外のforも終了できますか?


639 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:36:37 ]
for (int i = 0; i < 10; i++) {
bool exit = false;
foreach(string line in lines) {
if {//条件。
exit = true;
break;
}
}
if (exit) break;//外のforを抜ける
}
もしくは,
for (int i = 0; i < 10; i++) {
foreach(string line in lines) {
if {//条件。
goto EXIT;
}
}
}
EXIT:

640 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:40:30 ]
>>639
ラベルに命令はんないといけないから
EXIT:;じゃね?

641 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:43:09 ]
そうだけど後にステートメントが続くならセミコロンは普通書かない



642 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:47:43 ]
>>641
コンパイル通るの?
前ここではまったんだけど

643 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:48:38 ]
別のアプローチとしてはforを別の関数に切り出してreturnで抜けるというのもある。

644 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:53:44 ]
>>642
通る例
EXIT:
  Console.WriteLine(x);
}
通らない例
EXIT:
}
とにかく後にステートメントがあればいい。セミコロンだけの場合は空のステートメントがあるとみなされる。

645 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 20:55:44 ]
>>644
じゃあ>>639は嵌るべ

646 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 22:03:03 ]
>>639
thanks.

647 名前:デフォルトの名無しさん [2009/09/09(水) 23:37:40 ]
C♯で拡大鏡はできますか?

648 名前:デフォルトの名無しさん mailto:sage [2009/09/09(水) 23:49:15 ]
うん

649 名前:デフォルトの名無しさん [2009/09/10(木) 00:27:42 ]
とあるクラスにA1〜A5というプロパティがあるんですが
配列のindexのように参照する方法はあるでしょうか?

650 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 00:34:43 ]
ない

651 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 01:17:53 ]
>>649
A1〜A5の型が同じなら、とあるクラスにインデクサを実装すればいい。
まぁ、こんな事するんじゃなくてA1〜A5を格納するAってリストを作るべきだ。



652 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 01:58:11 ]
.netってスタティックリンクライブラリって使えないの?
DLLは作れるみたいだけどLibファイルのようなものは作れないのかな

653 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 02:00:44 ]
必要ないだろ

654 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 02:05:08 ]
作れるよ

655 名前:デフォルトの名無しさん [2009/09/10(木) 06:30:54 ]
>>648
どんなメソッドを使えばできますか?

656 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 07:33:35 ]
Graphics.CopyFromScreen

657 名前:デフォルトの名無しさん [2009/09/10(木) 12:06:35 ]
重大ニュース スレは★30までいく

【国際】 中国 「IT製品、ソースコード開示せよ」…日本側が撤回求めるも、予定通り実施へ★4
tsushima.2ch.net/test/read.cgi/newsplus/1252535413/
「ソースコード開示せよ」…中国が外国企業に要求
pc11.2ch.net/test/read.cgi/prog/1221835452
23 :名無しさん@十周年:2009/09/10(木) 02:28:25 ID:UeD78g5r0
李鵬が言ってた、20年後に日本なんてなくなるって、こういう事か。
40 :名無しさん@十周年:2009/09/10(木) 02:35:03 ID:BKKfZepB0
トヨタがプリウスで儲けれるのも来年までなんだね。

鳩山幸さんはサイエントロジーというカルトと関係があるという噂があります。
an★tikimchi.see★saa.net/art★icle/127578850.html
↑ 日本アンチキムチ団

鳩山幸さんの旧姓が不明だそうですよ。

764 名前:可愛い奥様[] 投稿日:2009/09/06(日) 01:04:07 ID:/WrcABwtO
北海道苫小牧在住の者ですが、老人ホームで暮らす朝鮮人のお婆ちゃんから聞いた話です。
幸夫人のごお父様は中国人ではなく、キム・ジョンウォン(漢字不明)という朝鮮北部出身の貿易商だったようです。
戦後は日本に渡り、幸さんが渡米するまでは神戸の商社に勤めていたようです。
キムさんは幸さんが渡米した直後、北海道室蘭に引っ越し、貿易商を営みながら総連支部の設立に尽力されたと話しておりました。
中国語・英語・ロシア語がお上手だったようですね。
【ファーストレディー】鳩山幸をウォッチするスレ 2
hideyoshi.2ch.net/test/read.cgi/ms/1252279762/


658 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 14:33:30 ]
>>652
ILMerge を使えば、複数のアセンブリを一つにできる。

659 名前:デフォルトの名無しさん [2009/09/10(木) 15:20:01 ]
DataRowの各項目はキャストしないとobject型のようなんですが、

if (rowA["HOO"] == rowB["HOO"])

みたいな比較は、右辺左辺両方が同じ型?(stringとかint)であることが事前に分かって
いれば、キャストせずに比較しても正しい比較結果が得られますでしょうか?

660 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 15:23:42 ]
得られません。常に参照比較になってしまいます。
Object型のままで値を正しく比較したければEqualsメソッドを使います。

661 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 20:50:57 ]
プロセスの終了について質問があります。
写真をまとめてみたいと思って、
string[] files = Directory.GetFiles(@"c:\photo", "*.jpg");
foreach(string file in files) {
photoProcess = new Process();
photoProcess.StartInfo.FileName = file;
photoProcess.Start();
}
Thread.Sleep(1*60*1000);
if (! photoProcess.CloseMainWindow()) {photoProcess.Kill();}photoProcess.Close();photoProcess.Dispose();
とやって見たところ、開いて1分待つところまではよいのですが、最後に閉じるのが1枚だけで、あとのウィンドウは開いたままになってしまいます。
こういう場合は、どうやればぜんぶのウィンドウを一括してクローズできるか、ご教示いただけないでしょうか。




662 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 20:51:47 ]
>>652
csc.exe /target:module
ちなみに
Q. Visual Studio 開発環境でこのコンパイラ オプションを設定するには
A. Visual Studio 開発環境では、モジュールの作成はサポートされていません。


663 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 20:54:39 ]
>>661
各Processオブジェクトを配列にでも突っ込んで、
終わるときはそれらを順にCloseMainWindowしてけばいい

>>662
moduleもダイナミックリンクだぜ






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

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

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