- 1 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 17:44:27 ]
- このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、 勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 ふらっとC#,C♯,C#(初心者用) Part23 pc11.2ch.net/test/read.cgi/tech/1200033660/
- 413 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:17:26 ]
- こんばんは
C#でメモリ確保の方法ってありますか? 指定したメモリ数を確保するツールを作りたいのです。 教えてください。
- 414 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:45:11 ]
- 確保してどうしようってんだ
- 415 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:49:13 ]
- それで思い出したけどスタックアロケートみたいのあったよね、あれってなんだったんだか
- 416 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 00:01:14 ]
- >>413
new
- 417 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 00:12:19 ]
- クラスのフィールドを取得するとき、フィールドをpublicにするかプロパティを用意するかは、どうやって決めたらいいんですか?
チェックなどを設けずに単にset{ this.hoge=hoge; } get{ return hoge; }とするのでも、プロパティ使う意味あるんでしょうか?
- 418 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 00:15:21 ]
- >>413
一昔前にあったメモリを強制的に確保して開放するメモリ掃除ツールの模倣? Console.ReadLine(); byte[] buffer = new byte[1024 * 1024 * 256]; buffer[1234567] = 5; //最適化防止用 Console.ReadLine()を抜けるとタスクマネージャにおけるPF使用量が増える。 ただNT系でメモリ掃除効果があるかは知らん。用途勘違いしてたら無視してくれ。
- 419 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 02:35:00 ]
- www.atmarkit.co.jp/fdotnet/onepoint/onepoint02/onepoint02_01.html
この記事を読んで一瞬でも難しいと思った自分は、まだまだ修行不足なんだろうなぁ… 返り血が構造体なプロパティや、構造体なコレクションのforeachなんかは 自分もそのうち使うと思うので注意だけど、他にも初心者は気をつけとけ!っていう所ありますか?
- 420 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 02:58:23 ]
- >>419
> 構造体なコレクション これ,できるのか・・・継承とか委譲とかはクラスにしかできないとおもてた
- 421 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 03:25:22 ]
- >>419
フィールドやセッターならエラー吐いてくれるからまだいいけど、 破壊的なメソッド呼び出しはエラーにならずに コピーに対して無意味な操作をしてしまうって方が厄介なんだよね。 これのせいで値型のメソッドはimmutableであるべきだとか そもそもフィールド操作と区別がつかないプロパティのシンタクスが 問題なんだとか主張もあったりなかったり。
- 422 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 05:54:21 ]
- あと値型でジェネリック系のコレクションを使う場合は
IEquatable<T>.Equals(T o)やIComparable<T>.CompareTo(T o)を 実装しないとパフォーマンスが非常に悪いことになる。
- 423 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 10:40:03 ]
- 初心者は構造体を使うな。
- 424 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 11:42:20 ]
- >>415
unsafe { byte* buf = stackalloc byte[10]; }
- 425 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 13:09:39 ]
- 構造体なんて自作するもんじゃないやね
- 426 名前:sage [2008/02/10(日) 13:11:27 ]
- データグリッドに以下の様な利用期間を表示しています
表示しているデータは、DBに対してSELECT文で SELECT data1,"〜",data2...で取得しています(data1,2はstring型 "〜"は表示上仕方なく) 開始日付 終了日付 20000101 〜 20000131 20010101 〜 20010131 20020101 〜 20020131 20030101 〜 20030131 20040101 〜 20040131 必要だと思うことが以下の3項目です 1、更新ボタンを押された際に開始、終了のどちらかがNULL場合はエラー 2、入力された値が日付で無い場合はエラー 3、開始日付<終了日付で無い場合はエラー 処理としては更新ボタンが押された際"DBのデータを削除後、画面情報をDBにINSERT"しようと考えています。 その際に"昇順、かつ終了日付<次の行の開始日付の様にZの様な並び"にソートする方法を調べていますが今一よく分かりません。 多次元配列で[0,2]と[1,0]を比較して逆なら行を入れ替えて・・・の様な作りになるのでしょうか・・・。 IComparableとArrayListを調べてるのですが基礎が無さ過ぎる為にかなりパニクってます; C#が初めての言語で経験2週間の度素人です・・・よければ教えてください。 開発環境はVisualStudio2003になります。
- 427 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 13:59:23 ]
- >>426
20020101 〜 20040131 20030101 〜 20030131 20020201 〜 20030115 こういうケースはどう並ぶの?
- 428 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:00:46 ]
- >>426
「表示」だけじゃ無いんだよな?日付入力して更新ということであれば 1.チェックの1〜3でOKならTMPテーブルに書き込む 2.TMPに書き込めたらcommitして元データ削除 3.TMPから元テーブルにコピー 4.元テーブルからSQLで読み込み(ここでソート) どうしても配列でソートなら「配列、ソート」でぐぐるか本嫁、基本だから 排他が気になるけど全デリート全インサートなん?
- 429 名前:419 mailto:sage [2008/02/10(日) 14:01:16 ]
- レスありがとうございます。せいぜい気をつけるしかないってことですね。
そういえば、C#のjavaより良い点の一つが、値渡しができる構造体って教わりましたよ。 なんとか使いこなせるよう頑張ろう。
- 430 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:10:29 ]
- 構造体を使うときに気をつけないといけないのはボクシング
こんなこというと,そんなもん大したコストじゃないだろとか言われそうだから先に言っとくけど, 構造体はそんなもんが問題になるような状況で使うもの
- 431 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:11:56 ]
- >>429
何が頑張ろうだ、頑張るのはお前だw
- 432 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:13:09 ]
- >>431
日本語って難しいよな
- 433 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:13:22 ]
- >>431
君頭悪いでしょw
- 434 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:13:34 ]
- 読解力がないだけ
- 435 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:14:58 ]
- >>431
同意
- 436 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:15:05 ]
- >>430
なんか言ってること変じゃないか?w よくわかってないのなら無理しない方がいいと思うよ
- 437 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:15:40 ]
- >>435
同意?
- 438 名前:430 mailto:sage [2008/02/10(日) 14:19:21 ]
- 構造体はそんなもんが→構造体はその程度のコストが
これでいいか?
- 439 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:23:39 ]
- よくないでしょw
ボクシングは構造体にまつわる問題だ、と自分で言ってるのに、 どうして「ボクシングが問題になるような状況で」構造体を使うんだよw
- 440 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:25:43 ]
- そうじゃなくて構造体の一番の意義は、
たとえば配列の要素にアクセスするような場面における参照型のオーバーヘッドを 回避することでしょ。
- 441 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:42:26 ]
- >>439
GC負荷を減らしたいときに構造体が活用できることがある。 でも構造体を使うときはボクシングに気をつけないとかえってGC負荷を増やしてしまう。 だからGC負荷を減らしたいときは、ボクシングに気をつけながら構造体の活用を考えよう。 というような話を>>430はしたいのだろう。
- 442 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:49:39 ]
- 構造体でボクシング利用するような事例ってどんなのだ?
- 443 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:52:35 ]
- ボクシングってなーに?
- 444 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:55:33 ]
- >>430はボクシングしないように構造体を使わないと早くならんぞといっているだけだろ
俺はほぼ全てのケースで構造体使っても早くならんと思ってるけどな
- 445 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:55:41 ]
- 構造体のアップキャスト
- 446 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 14:57:15 ]
- >>442
例えば構造体のToStringをオーバーライドしてないとき。 public struct Hoge { public int Fuga; } Hoge hoge = new Hoge(); string str = hoge.ToString(); // ←ここでボクシングがおきる 他にもIEquatable<T>を実装させずにDictionaryのキーにしたときとかボクシング起きまくり
- 447 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 15:04:16 ]
- >>444
構造体は速くするためというよりは遅くならないための仕組みな気がするね。 >>446 >他にもIEquatable<T>を実装させずにDictionaryのキーにしたときとかボクシング起きまくり GetHashCodeのオーバーライドも忘れずに。
- 448 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 15:40:00 ]
- >>446みたいなのって単なる設計のミスだと思うんだけど。
- 449 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 15:56:38 ]
- static string ToString(ValueType this);//ValueTypeは参照型
こんなメソッドを呼び出してることに相当するわけだから
- 450 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 16:06:28 ]
- >>448
>>449 C#コンパイラが出力したIL見てみれば分かるけど .NET 2.0以降ではconstrainedプレフィックスが使えるようになったので ValueType.ToStringの呼び出しそのもののボクシングは回避できるようになった。 その意味では設計で対処されてる。 ただ、ValueType.ToStringが中でbase.GetType().ToString()を呼んでいるので そこでボクシングとかGCヒープアロケーションは起きる可能性が高い。
- 451 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 16:28:54 ]
- GetTypeって実際は何をやってるんだろうなあ
- 452 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 17:13:59 ]
- 試してみたけどGetTypeにもToStringにもヒープアロケーションはあるみたいだね
static void Main(string[] args) { for (int i = 0; i < 10000000; ++i) { Type t = i.GetType(); } Console.WriteLine(GC.CollectionCount(0)); Console.WriteLine(GC.CollectionCount(1)); Console.WriteLine(GC.CollectionCount(2)); } 458 2 1 GetType→ToString 1206 2 1 ToStringはstringを作るわけだから当たり前だけど
- 453 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 17:53:12 ]
- ToStringは使用頻度が低いから特に問題にはならないと思うが、
ハッシュや比較はコレクションで大量に使うからきちんと実装しといたほうがいい。 IEquatable<T>やIComparable<T>などを実装しないならジェネリックでないコレクションを使ったほうが、 ボクシングの回数は少なくて済むから逆にパフォーマンスもいいんだよね。
- 454 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:06:28 ]
- 今さらながら
プログラミング.NET Framework第2版 を買いました。 もう4月までずっと春休みなので 休み中に読破しようかな〜
- 455 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:09:55 ]
- 大学生は暇でいいですなー
- 456 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:37:24 ]
- あの本は勉強になるな
- 457 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:39:23 ]
- >>454
この業界来ないように他業種の勉強しておいた方がいいと思うよ
- 458 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 19:28:08 ]
- コレクションで使う場合はハッシュと比較が影響を与えやすい。
ほかに、領域確保の効率が悪くなることで参照型より負荷が高くなることもある。
- 459 名前:デフォルトの名無しさん [2008/02/10(日) 19:28:52 ]
- 第3版はいつ出るんだろ?
- 460 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 19:37:27 ]
- >>457
微妙に同意してしまうのだがw
- 461 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 20:01:22 ]
- >>460
激しくだろ?
- 462 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 21:02:03 ]
- まああれだ、不幸な奴ってのは不幸な理由を自分の置かれた環境に求めたがる、
という例の恥ずかしい法則でしょ たとえば職業とかさw お前が不幸なのはそれはお前だからだ、というのが真実なのにねw
- 463 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 08:22:09 ]
- タブページをSelectedIndexの変更で切り替えると、切り替え先のチェックボックスが何故か押されてしまいます。(しかも2番目)
クリックで切り替えたときは何も起こらないのですが、何か原因があるのでしょうか?
- 464 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 11:13:36 ]
- 自己解決しました
- 465 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 11:14:29 ]
- 質問はするが、解決結果をフィードバックする気はないと
- 466 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 11:31:27 ]
- なんかのイベントでChecked = true;って自分で書いたんだろ
- 467 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 12:48:18 ]
- とあるネイティブWin32アプリの拡張dllをC#で書くことって可能ですか?
つまりC#(.NET)でアンマネージなDLLの開発が出来るかということだと思うんですが・・。 因みにWin32アプリの方をCOM対応にするとかはなしで。
- 468 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 12:54:25 ]
- C#でアンマネージドなDLLは作れないけど、CLRの機能としてマネージド関数をアンマネージドの世界に公開することは出来る。
ただ、多くの場合まともに動かないから、素直にC++/CLIでラッパDLLを書いたほうがいい。 ここで気をつけなければならないのが、一つのプロセスには一つのCLRしかロードできないということ。 つまり、そのプロセスに別のバージョンのCLRを使うモジュールがロードされていると正常に動かない可能性がある。
- 469 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 13:23:56 ]
- やっぱり難しいですか。
C++はかなり苦手なんだけど、ラッパDLLがいいんなんですね。 念のため調べたいので、どっかにCLRでマネージドを公開するいい例が無いでしょうか・・?
- 470 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 13:28:03 ]
- ラッパより糖衣だろう
- 471 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 13:28:58 ]
- >>469
support.microsoft.com/default.aspx?scid=kb;ja;815065
- 472 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 13:34:32 ]
- ILかw
これはひどい
- 473 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 13:39:54 ]
- >>471
逆PInvokeはさすがに知らんかった。 どの言語から使いたいのかわからないけどCOMが一番取り回しが楽だよ。 登録の問題はSxSで回避できるし。
- 474 名前:467 mailto:sage [2008/02/11(月) 13:51:19 ]
- もう圧倒的にCOMがいいのは重々承知なんですが、
OpenSource系のWin32だし苦手なC++なので手が入れられないんですよね。 逆アセンブリ?もちょっと・・
- 475 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 13:57:48 ]
- じゃあやっぱりC++/CLI
- 476 名前:467 mailto:sage [2008/02/11(月) 14:03:55 ]
- ですよねー。それがいいみたいですね。
よく分かってないので、C++/CLIでのラッパーの作り方とか調べてみます。
- 477 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 14:59:09 ]
- そこらへんくわしい書籍ないかな?
あんまり見かけない気がする てかC++/CLI関係の本がないか。。。
- 478 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 16:24:41 ]
- 装飾付きRTFファイルに装飾付きRTFデータを追記する方法で困っています
装飾部分が毎回同じ(黄色のハイライトのみ)なので単純合体の方法で 現存のRTFファイルをテキスト読込し最後の2行の終了部を削る 追加するRTFデータをRTFファイル出力してからテキスト読込して 最初の2行の装飾部を削ってテキストを合体させテキスト出力する そのくらいしか思いつきません 他によい方法はありますでしょうか?
- 479 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 16:39:30 ]
- フォームにリッチテキストボックスを2つ置いて、起動時に引数でファイル読込して
片方に追加させファイルに書込んで終了する単独ソフトを作った方がいいのかなあ
- 480 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 19:46:07 ]
- Qtで作成させたウィンドウのイベントをフックするプログラムを作りたいのですが、
スパイ++で覗いたところ、QWidgetというクラスで、キャプションはlbOKというオブジェクトです このlbOKをクリックするイベントを送りたいのですがどうしたらいいでしょうか? ウィンドウハンドルやウィンドウProcなども分かっています よろしくお願いいたします
- 481 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 19:58:02 ]
- 実際にクリックしてみてどんなメッセージが飛んでるか、
Spy++で調べて、SendMessageで再現すればいいよ。
- 482 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 19:59:07 ]
- >>480
SendMessage, BM_CLICK
- 483 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 20:09:20 ]
- >>481
>>482 なるほど参考になりました SendMessageですね!! さっそくSpy++で調べてやってみます!!
- 484 名前:デフォルトの名無しさん [2008/02/11(月) 21:28:58 ]
- Vistaの「Task Dialog」で
OPENFILENAME構造体のFlugsにEnableTemplateHandle、またはEnableHookを選択するとXP以前の外観に戻ってしまうんです。 ダイアログボックスをカスタマイズするには、ウィンドウメッセージをフックする必要があるので、EnableHookを必ず選択しないといけなく新しい外観のままカスタマイズすることはできないのです C++では使えないようなんですが ttp://msdn2.microsoft.com/ja-jp/library/43xtah3y.aspx C#ではどうなんでしょう おねがいします。
- 485 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 21:42:45 ]
- ものすごい初心的な質問だと思うんですが
ボタンだけを配置したフォームでキーイベントを受け取りたいのですが どうすれば良いのか教えてください
- 486 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 22:55:36 ]
- 結局はゆうが細かったということで
- 487 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 00:55:49 ]
- ContextMenuStripでShow()した時に、
ContextMenuStripが閉じるまでShow()から制御が戻らないようにしたいんだけど、 どうすればよい? TrackPopupMenu()みたく、メニュー側でモーダルループ持たせたいんだけど。。。
- 488 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 05:27:39 ]
- HttpWebRequestを用いて通信したとき、
200successや404notfoundなどの コードはどのように取得したらいいのでしょうか? よろしくお願いいたします。
- 489 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 08:52:18 ]
- >>488
HTTPの応答時のステータスコードを取得する ttp://dobon.net/vb/dotnet/internet/httpstatuscode.html
- 490 名前:デフォルトの名無しさん [2008/02/12(火) 09:00:56 ]
- >>488
HttpWebResponse.StatusCodeとHttpWebResponse.StatusDescriptionに はいってんじゃね? 404だと例外放るからWebExceptionキャッチして、webException.Response をHttpWebResponseにキャストして、同様にStatusCodeなんかを見る。
- 491 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 12:47:34 ]
- >>489
>>490 ありがとうございます HttpWebResponseにキャストしなくちゃいけなかったんですね 大変助かりました
- 492 名前:デフォルトの名無しさん [2008/02/12(火) 15:07:00 ]
- PDFファイルの中の文字を検索とかってできるんかね?
- 493 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:35:42 ]
- ネットの海からライブラリを探すしかない
- 494 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:43:15 ]
- 仕様は公開されてるから自分でできるよ
- 495 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:55:27 ]
- PDFってバイナリでしょ?
画像も入るからむずかしくね?
- 496 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:56:11 ]
- そういやGoogleボットはPDF内もクロールしてるな
できるんじゃね PDFのgrep作ったら俺にもちょうだい
- 497 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 17:05:22 ]
- >>495
バイナリエディタで見ればわかるが、少なくとも文字はただのテキスト。
- 498 名前:デフォルトの名無しさん [2008/02/12(火) 17:27:13 ]
- UserControlでスムーズスクロールを実装するにはどうやればいいのでしょうか?
- 499 名前:デフォルトの名無しさん [2008/02/12(火) 18:06:14 ]
- ああ、つまりアレか
PDFファイルを開いて文字列だけ正規表現か何かで抜き出せばいいのか
- 500 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 18:27:22 ]
- 画像と画像じゃない部分は区別しなくていいの?w
ダメだろそんなルーズな方法
- 501 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 18:42:02 ]
- pdfのライブラリでテキストだけ抜き出せるべ
- 502 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 21:18:19 ]
- バイナリから文字列っぽい部分拾ってくるだけなら、ただのstringツールだ
- 503 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 23:24:58 ]
- PDF -> テキスト ならTeXについてくるツールでいいんじゃね
- 504 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 01:14:16 ]
- 携帯から失礼します
GameState = Title; switch (GameState) { case Title: 処理 if("Aを押したら") { GameState = Main; } break; case Main: 処理 break; } こんな感じのプログラムを打っているのですが、実行結果が少しおかしいのです。 タイトル画面からAを押したらメイン画面に移行します。しかし、メイン画面での処理が始まりません。 試しにGameStateにMainを入れて始めたら、メイン画面の処理が行われました。 ちなみに、タイトル画面にメイン画面の処理を全て入れてタイトル画面→メイン画面と移行させたらメイン画面の処理が行われました。 しかし、タイトル画面ではタイトルの処理だけ、メイン画面ではメインの処理だけさせたいのでこれでは意味がないのです。 説明下手で申し訳ないです。何か分かりましたら教えて頂けないでしょうか?
- 505 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 01:20:14 ]
- >>504
breakしてんだから始まるわけないじゃん 処理のフローをちゃんと見直せ
- 506 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 01:29:16 ]
- アフォすぎてワラタ
- 507 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 01:38:51 ]
- PDFのフォーマットは失禁するほど複雑だし(1300ページ超)、文字列も何種類かあるし、
自前で解析なんてやってられない
- 508 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 01:39:28 ]
- なんでPDFなんてできたんだ
- 509 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 01:45:06 ]
- お答えありがとうございます。アホな質問に答えて頂き感謝します。
しかし、break文を消した所、 コントロールはひとつのcaseラベル(case 0)から別のラベルへ流れ落ちることはできません。 と、エラーが出ました。恐らく case Title 処理 case Main と書いてあるためだと思われますが、これだ ここまで書いて思ったのですが、なんか質問する以前の問題のような気がしました。もっと勉強し直して来ます……すいませんでした
- 510 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 02:12:19 ]
- >>509
だからフローを見直せって switchの使い方がおかしいんだろ
- 511 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 02:17:44 ]
- >>510
はい、もう一度見直します。もっとじっくり考えます。今日はこれが出来るまで寝ないつもりで頑張ります。
- 512 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 02:21:23 ]
- C#以前に構造化プログラムを理解してないんだろ
初心者はif while以外使うな これだけでプログラム書ける
- 513 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 02:25:24 ]
- 今時構造化プログラミングが何かすらソフトウェア工学で教えなかったりするらしいな
|

|