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


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

C#, C♯, C#相談室 Part45



1 名前:デフォルトの名無しさん [2008/01/21(月) 19:35:37 ]
(#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。
c++厨の嵐はスルー汁。

前スレ
C#, C♯, C#相談室 Part44
pc11.2ch.net/test/read.cgi/tech/1194956418/

その他テンプレ>>2-5くらい

487 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:08:13 ]
Arc

488 名前:デフォルトの名無しさん [2008/03/02(日) 00:14:00 ]
>>486
しかし酷いコードだな。
「プログラム診断室」に出てくる悪いコードの見本みたいだ

489 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:28:47 ]
>>488
ハァ?
じゃぁ、良いコードの見本書いてみろよ。


490 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:39:09 ]
例えば、
>const double rad = 0.0174532925;

const double rad = PI/180;

くらいはしてほしい。。

491 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:41:16 ]
450とか220とかを変数にできないものか。
あと、12じゃなくて、360/30って書いてよ。

492 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:43:14 ]
private void button1_Click(object sender, EventArgs e)

private void timer1_Tick(object sender, EventArgs e)
に共通部分が多いことに違和感を感じないのだろうか。

493 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:43:43 ]
>>487
すいません。
プログラミング初心者なんです。

>>489
ちょ、あなた誰ですか。
やめてください。

>>490
わかりました。Math.PIですね。
>>491
わかりました。

494 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:45:36 ]
>>492
すいません。
オブジェクト指向というか、スコープを良く分かってないんです。

495 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:49:16 ]
if (deg == -270)
も危険な感じがする。12度間隔じゃなかったら270丁度にならないよ。
if (deg <= -270)
にした方が良いかと。




496 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:50:17 ]
質問に対する回答以外のつっこみを排除しようとするなら2ちゃんなんかに書き込まないほうが精神衛生上いい

497 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:50:43 ]
>>486
天才wwwww

498 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 00:52:24 ]
ちょ、変数rがwwwwwwwwwww

499 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 03:09:07 ]
で、>486の質問への回答としてはg.FillPie()を使えという事でいいんかいな

500 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 07:22:27 ]
今までだと WebBrowser にフラッシュを表示させると
クリックしてもフラッシュにクリックが伝わらなかったけれども
いつの間にか正常にクリックできるようになってるじゃん

501 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 07:32:16 ]
x = (int)(r * Math.Cos(deg * rad) + 450);
y = (int)(-r * Math.Sin(deg * rad) + 220);

はPositionFromDegreeとかにまとめとけ

502 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 12:40:37 ]
しかしregionでまとめれば大して差は無い

503 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 15:10:47 ]
CreateGraphicsでつくったGraphicsはDispose推奨

504 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 16:59:45 ]
自作のアプリケーションの更新があった場合ネットワーク経由で自動的に通知できる様にしようとしています
Jane Doeをイメージしていただけるとありがたいです…

こういった場合の一般的なアプローチの方法を教えていただきたいです。
今のところ、バージョンを管理するテキストファイルをウェブ上にアップしておきそれをDL、読み込みすることで判定する、といった方法を考えているのですが
いまいち遠回りでスマートでないような気がします。

また、確認のついでに使用しているバージョンなどのログが取れたらと思うのですが
こういったものは普通CGI等を利用して実装するのでしょうか?

505 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 17:19:30 ]
>>504
前者は、逆にそれ以外の方法があるのかと思う。
サーバー側から配信するってことだと思うけど、宛先がわからない。
初回に登録させるのは多分いやがるだろうし、登録したって変わる可能性が高すぎる。
おまけに配信作業がプログラムを書くにしても手作業でやるにしてもめんどくさすぎる。

最新情報を書いておくのはテキストでいいのか、XMLがいいのかって問題はあると思うけど
そのURLをずっと固定で維持する必要があるのが唯一の難点なだけで、
それしかないと思うけど。

後者はUserAgentに書いておけば、アクセス解析させるだけで出来そうな気もする。
ってこれも一応CGIか。



506 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 17:41:14 ]
>>504
clickonce

507 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 17:48:55 ]
>>505
なるほど!UserAgentは思いつかなかったです。ありがとうございます。
CGIとかさっぱりだったので困り果ててたのですがさすがにアクセス解析ならなんとかなると思います。

自動更新は苦肉の策のつもりだったのですが
やはり他の方法は考えにくいですよね…。

サーバーダウン等で接続できない時はその旨を出すようにしてましたが
そもそも、サイトが移転した状況を考えていませんでした。
人為的な問題なのでヘルプにサイトを記述したり、移転前に告知することで対策することにします


ところで、テキストで書く以外考慮していなかったのですが
バージョン管理をXMLで記述するメリットというのはどういったものなのでしょうか?

508 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 18:02:49 ]
>>506
ああ、ClickOnce忘れてました…!
これは限りなく正解に近いです。ありがとうございます。

ただ、まだあまり使われてるところを見かけないのが少し心配ですが
とりあえず>>504の方法と両方試してユーザーと相談してみることにします。
みなさま本当にありがとうございました。

509 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 22:07:52 ]
>500
IEの仕様変更。
特許の期限切れで以前の動作に戻ったんだよ。

510 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 22:22:04 ]
>>509
そのパッチってまだ出てないでしょ
サイトによっては
クリックするとこのコントロールをアクティブにして使用します
ってのが出るし

511 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 22:28:21 ]
確かJavaScriptで逃げてるはず


512 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 22:38:20 ]
Eolas問題に関してはスクリプトで回避できるけれども
>>500の件はスクリプトを使っていようがいまいが
WebBrowser 内の Flash はまともに動いていなかった

513 名前:デフォルトの名無しさん [2008/03/03(月) 03:29:05 ]
ボタンコントロールのImageプロパティに
ビットマップを設定しています。

クリック時やマウスオーバー時の
画像を変更したいのですが、よい方法はありますでしょうか?

現状ではMouseEnter、MouseLeaveイベントを処理して
Imageをその都度入れ替えています

514 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 03:43:54 ]
良い方法っていうのは効率の良い方法って意味だよね?

EnterとLeaveで2枚しか使わないなら、2枚を一々変えずにメモリ確保とかその程度じゃない?

515 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 05:39:39 ]
imagelistでも使えば



516 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 08:52:04 ]
おはうー

517 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 23:21:01 ]
bmpはでかいからjpgやpngにするとか?
もしくは16色bmp

518 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 23:38:27 ]
どうしたいのかわからないぞ
処理を軽くしたいとかか?

519 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 00:22:06 ]
一般的あるいはスマートな方法があるのか知りたいだけじゃないのか?

520 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 00:22:36 ]
都度入れ替えているが切り替えスピードが遅く困っている、とエスパー予備軍の俺が予想

521 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 00:59:29 ]
まあ、本人も消えてるしどうでもいいか。

522 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 04:03:30 ]
以下のコードを実行すると、FileLoadException が発生します。
コード (抜粋):
static void Main(string[] args) {
 var source =
@"using System;
public class Test {
 public static void Main() {
  Console.WriteLine(Console.ReadLine());
 }
}";
 var result = CodeDomProvider.CreateProvider("cs").CompileAssemblyFromSource(
  new CompilerParameters() {
   GenerateExecutable = true,
   GenerateInMemory = true,
  }, source);
 var domain = AppDomain.CreateDomain("test");
 domain.Load(result.CompiledAssembly.GetName());
}
例外:
ファイルまたはアセンブリ 'System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'、
またはその依存関係の 1 つが読み込めませんでした。見つかったアセンブリのマニフェスト定義はアセンブリ
参照に一致しません。 (HRESULT からの例外: 0x80131040)

GenerateInMemory を false にして OutputAssembly を与えてやるとうまく動作するようなの
ですが、メモリ内で生成した上で動作させるためにはどうすればよいのでしょうか。
どなたかご教示いただけませんでしょうか。よろしくお願いいたします。

523 名前:デフォルトの名無しさん [2008/03/04(火) 06:12:47 ]
PictureBox自体を回転させる方法は無いでしょうか?
もしくはPictureBoxに書いた画像を回転させる方法は無いでしょうか?
Graphics g = pictureBox1.CreateGraphics();
g.DrawPie(mypen, 20, 20, 400, 400, 0, 18);
pictureBox1.Image.RotateFlip(RotateFlipType.RotateNoneFlipY);
としたのですが、出来ませんでした。

524 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 06:57:56 ]
CodeDomに参照アセンブリを設定してやる必要があるんじゃなかったかな

525 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 07:46:40 ]
最初からRotateさせてPieかいたら?



526 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 08:33:19 ]
>>522
最初から新しいドメイン内でコンパイル

527 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 08:35:01 ]
だいたいdomain.Loadはあまりやらない方がいいぞ。


528 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 11:29:46 ]
>>523
DrawPieの前にg.RotateTransform

529 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 11:33:26 ]
>>523
pictureBox1.CreateGraphics()で取得したGraphicsに描画しても
pictureBox1.Imageの方はなんら変わらないから、どちらか一方に統一しろ

Image使うならpictureBox1.ImageからGraphics作ってそっちに描画
俺はよくバッファ代わりに使ってる

530 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 11:41:50 ]
メソッド内でNewしたコンボボックスにDataSource設定してもItems.Countが更新されないみたいなんだけどそういうもん?

531 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 11:45:31 ]
なんのことやら

532 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 13:36:26 ]
こんな感じ

private void Form1_Load(object sender, EventArgs e)
{
  DataTable dt = new DataTable();
  dt.Columns.Add("Key", typeof(int));
  dt.Columns.Add("Value", typeof(string));

  DataRow r = dt.NewRow();
  dt.Rows.Add(new object[] { 1, "h" });
  dt.Rows.Add(new object[] { 2, "o" });
  dt.Rows.Add(new object[] { 3, "g" });
  dt.Rows.Add(new object[] { 4, "e" });

  //画面に張り付いてるオブジェクト
  comboBox1.DataSource = dt;
  comboBox1.ValueMember = "Key";
  comboBox1.DisplayMember = "Value";
  MessageBox.Show(comboBox1.Items.Count.ToString());

  //メソッド内で宣言したオブジェクト
  ComboBox zzz = new ComboBox();
  zzz.DataSource = dt;
  zzz.ValueMember = "Key";
  zzz.DisplayMember = "Value";
  MessageBox.Show(zzz.Items.Count.ToString());
}


533 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 14:01:32 ]
Itemsに反映されるのはハンドルが作られてから。

534 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 15:29:37 ]
Debug.Print(zzz.Handle.ToString());
でハンドル作って?みたけどやっぱりCountは0のままっぽい

やり方が間違ってるのかな・・・orz

535 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 15:54:16 ]
ウィンドウハンドルだろjk

というか一旦ウィンドウが表示されてからメッセージボックスで出力すればいいんでないか?



536 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 20:22:03 ]
Handleプロパティにアクセスすると作成されたと思うけど。

RefreshItems();でもしてみれば?


537 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 22:38:25 ]
長いパスを扱うときのファイル名の頭に\\?\を付けると例外が起きます。
そのまま長いパスをFileStreamとかに渡しても駄目です。
.NETだけだと長いパスは扱えなかったりします?

538 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 22:45:54 ]
逆に.NET以外だと扱えたりします?
んなことないと思うけど。

539 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 22:58:07 ]
前に掲示板で見かけたような気がするが見つけられん。
まあ結論として.NETじゃ扱えない、だったはず。
やりたいならCreateFileでハンドル取ってきて、かね。

540 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 23:42:22 ]
datagridの列幅ではまって早二日・・・・
検索してもうまい解決方法がみつからない、誰か教えてくれ
やりたいのは、csvを読んでdatagridに表示すること。
ttp://www.ailight.jp/Grid_CSV.aspx
ここで紹介されているコードを参考にして、csvファイルをdatagridに読み込ませたのだが、
列幅が設定できない。
各所で紹介・解説されている列幅設定だと、tablestyleを設定して云々とあるが、俺にはそこらへんの処理の仕組みがさっぱりわからない。
上に引用したコードを元に、うまいこと列幅を任意の長さに設定する方法ないかな?

541 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 23:45:25 ]
DataGridTableStyle でぐぐれ

542 名前:デフォルトの名無しさん mailto:sage [2008/03/04(火) 23:49:30 ]
>>541
既に昨日ぐぐった。でもわからん。
各所で解説されている列幅設定のコードを参考にしてdatagridに一回読ませるのはできるが、
その後に別のcsvをdatagridに読ませようとすると、
追加情報 : このデータ グリッドのテーブル スタイル コレクションには 既に同じマップ名のテーブル スタイルが含まれています。
ってエラーでストップする。

543 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 00:00:40 ]
エラーメッセージ見れば一目瞭然だと思うんだが…
以前のDataGridTableStyleをDataGrid.TableStylesからRemoveするなり
追加済みDataGridTableStyleを直接いじるなり
テーブル名変えるなり

544 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 00:03:04 ]
ぐぐったのにここ見てないのん?
dobon.net/vb/dotnet/datagrid/columnwidth.html


545 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 00:06:01 ]
>>543
removeか、そんなのがあるのか、しらんかった。試してみる。
>>544
そこは一番最初に見た、理解できんかった。
とりあえずボタンを押すとそこに書いてあるコードを実行するform作ってビルドしたら、
一回目のボタンは正常に動くけど、2回目で追加情報〜含まれていますで止まるんだよね。

removeか・・・なんか行けそうな予感がしてきた。
明日やってみる。



546 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 00:16:30 ]
>539
やっぱそうですか。無理そうな気はしてました。
なぜかIISから上がるASP.NETのプロセスが\\?\が付いたパスで実行されてることがあるので気になったので。
\\?\から始まるパスでexeを叩いてアプリを起動するとApplication.StartupPathなんかが例外しか返らなくなる。
そうなると他にも危ないプロパティやメソッドが出てきてそれなら正しく扱う手段が知りたくて。本当に深いパスを扱うことはあんまり無いです。
パスっぽい文字列が出てきたら\\?\で始まってたら削る不毛な処理をひたすら入れておきます。

Application.StartupPathみたいに即座に例外が返るものはちょっとどうしようもないので、
.NETのクラスライブラリ内のメソッドとかで危ないものは
自分用にObsolete付けて迂闊に使ったら警告を出せるようにする手段はないかなぁとか思う。

547 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 10:47:58 ]
FxCopのカスタムルールで検出させるとか?

548 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 11:37:30 ]
FxCop で vb だけで絞りこんで表示させることってできない?
ちなみに当方 FxCop 1.36 Beta 2。

549 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:43:27 ]
パターン指向リファクタリング入門 P359 「コンストラクタの連鎖」を C# で試してみました。
すると「this」で、「メソッド名が必要です」と怒られます。
C# でコンストラタの連鎖を問題なく行うにはどうしたらよいでしょうか?

class Loan
{
  public Loan(float notional, float outstanding, int rating, DateTime expiry)
  {
    this(new TeamROC(), notional, outstanding, rating, expiry, null);
  }

  public Loan(float notional, float outstanding, int rating, DateTime expiry, DateTime maturity)
  {
    this(new RevolvingTeamROC(), notional, outstanding, rating, expiry, maturity);
  }

  public Loan
    (CapitalStrategy strategy, float notional, float outstanding, int rating, DateTime expiry, DateTime maturity)
  {
    m_strategy = strategy;
    m_notional = notional;
    m_outstanding = outstanding;
    m_rating = rating;
    m_expiry = expiry;
    m_maturity = maturity;
  }
}


550 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:51:39 ]
public Loan(float notional, float outstanding, int rating, DateTime expiry)
 : this(new TeamROC(), notional, outstanding, rating, expiry, null)
{
}

551 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 17:54:47 ]
>>549
C# 言語の仕様

10.10 インスタンス コンストラクタ
msdn.microsoft.com/library/ja/default.asp?url=/library/ja/csspec/html/vclrfcsharpspec_10_10.asp

552 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 22:54:31 ]
javaかよ。

553 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 20:16:50 ]
Silverlight2Beta来たね

554 名前:デフォルトの名無しさん [2008/03/07(金) 14:53:00 ]
struct A
{
 ...
}

A[] a = new A[10];

としたとき、a[3]のようにアクセスするときって、C++のメモリのようにa+sizeof(A)*3というようにCPUで乗算処理が発生しているんでしょうか?
だとしたら速度が必要なな部分では配列アクセスにするよりクラス参照のリストのようなかたちにしたほうがいいのでしょうか?

555 名前:デフォルトの名無しさん [2008/03/07(金) 15:10:33 ]
ここで聞いていいのかどうか分かりませんが、

3次元が固定、2時限目が動的、1次元が固定の配列を
作るにはどうしたらいいのでしょうか?

float[][,] farray=new [14][,4];

とやってもうまくいきません。
掲示板では見にくいのですが、
4の前には「 ,」カンマが入っています。





556 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 15:13:53 ]
>>554
プログラミングガイドの配列のところにはこう書いてある。

>配列型は、抽象基本型 Array から派生した参照型です。
>この型は IEnumerable と IEnumerable<(Of <(T>)>) を実装するので、C# のすべての配列で foreach 反復処理を使用できます。

だから気にしていることに限ってはどっちにしても変わらない。
と予想してみる。

557 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 15:20:19 ]
デリゲートに追加した匿名メソッドを指定して取り除く事って出来るかな?

558 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 15:20:49 ]
速さが必要ならそんなことよりもっとほかにやるべきことは沢山あるはずだし、
それをやり尽くした上で554のようなことまで気になるというのなら、
C#ではなく、アセンブリ言語とC++でどうにかすることを考えるべき段階。

故に
>>554
そんなこと気にするな。

559 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 15:21:11 ]
>>554
こういう文もあった。
>C# の配列はオブジェクトそのものであり、C や C++ の場合のように、単なるアドレス指定可能な連続メモリ領域ではありません。

>>555
次元に関係なく、要素を動的に変える配列は作れないよ。
List<>とかと組み合わせたりしないと。

560 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 15:22:19 ]
×次元に関係なく、要素を動的に変える配列は作れないよ。
○次元に関係なく、要素数を動的に変えられる配列は作れないよ。

561 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 15:25:56 ]
unsafeとfixedでCみたいな配列としても扱えるよ

562 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 15:45:47 ]
>>560
動的/静的は配列に対して使い方が難しいので可変長と言うべきだな

563 名前:デフォルトの名無しさん [2008/03/07(金) 16:19:34 ]
こんな形で使うのは初めてなので聞いてみたのですが、
思ったより難しいのですね。
C++ならそこまで難しくないと思ったのですが。


564 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 16:51:24 ]
C++で可変長配列とか、泥沼だろ。

565 名前:デフォルトの名無しさん [2008/03/07(金) 16:58:28 ]
float[] oned=new float[4];
oned[] twod;
twod[] threed=new float[14];

自分で考えてここまでやってのですがこれで正しく動作するか
わかりませんし処理効率がどうなるかは分かりません。
<vecto>とかboostみたいに上手いことできないでしょうか?




566 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 17:04:58 ]
>>565
おまいは自分で考えてここまで何をやってきたんだ

567 名前:デフォルトの名無しさん [2008/03/07(金) 17:15:16 ]
めんどくさいので
float[][][] threed=new float[14][][];
だけで後は自動に任せることにしました。
ありがとうございました。


568 名前:デフォルトの名無しさん [2008/03/07(金) 18:19:46 ]
と思ったのですが、Listのほうが用途に
合っていそうなので、そちらを使ってみることにします。


569 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 19:29:55 ]
先ずC#で何ができるか調べたほうがいい

570 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 20:22:35 ]
>>568
それは最初から「vector 相当のものはありますか?」と聞くべきだった。

571 名前:デフォルトの名無しさん [2008/03/07(金) 21:16:35 ]
>570
すいませんでした<(_ _)>


572 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 13:29:24 ]
ありがとうございます!

573 名前:デフォルトの名無しさん [2008/03/08(土) 14:14:48 ]
こうだくみこのおまんこにセロリいれたいな
みんなはなにいれたい?

574 名前:デフォルトの名無しさん [2008/03/08(土) 14:23:43 ]
585 名前:デフォルトの名無しさん[sage] 投稿日:2008/03/08(土) 14:20:47
yutori.2ch.net/test/read.cgi/news4vip/1204952244/

   1 名前:以下、名無しにかわりましてVIPがお送りします。[] 投稿日:2008/03/08(土) 13:57:24.68 ID:oVsMTN3J0
     次世代言語”D言語”を使ってプログラミングをしてみよう!
     C++で挫折した君も、プログラミング初心者の君も今日からプログラマーだ!

     D言語入門 www.geocities.jp/tor_park/Dlang/d2.html

575 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 14:28:28 ]
コピペ君って馬鹿だな、まで読んだ。



576 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 14:46:34 ]
コピペ君って馬鹿だな、まで読んだ。

577 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 14:49:07 ]
>>575-576
コピペしか能のない低脳は消えろ

578 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 14:52:32 ]
Dってまだ生きてたんだ
C#があればいらないのにね
まったく、無駄なことしてるよな

579 名前:デフォルトの名無しさん [2008/03/08(土) 15:03:23 ]
同感
早くバージョンが安定してVSに匹敵するIDEが出たら使ってやってもいいが
何年更新してるんだよ?

580 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 15:05:06 ]
まあVSのないC#なんか誰も使わないよな
ネイティブコードなんかよりはるかにそっちの方が重要

581 名前:デフォルトの名無しさん [2008/03/08(土) 15:27:34 ]
>555です。
しつこいですがリストを使ってもうまくいかなかったので
こうしてみました。

ArrayList data = new ArrayList(14);
data.Add(new ArrayList());
((ArrayList)data[0]).Add(new ArrayList());
((ArrayList)((ArrayList)data[0])[0]).Add(new float[4]);
((ArrayList)((ArrayList)data[0])[0])[0] = 1;

MessageBox.Show(((ArrayList)((ArrayList)data[0])[0])[0].ToString());

後は変数を使ってネストすればいいだけだと思います。
こうすれば何とかなるようです。

しかし、コードが長いのでなんとか短くしたいです。
typedefもないし、usingを使ってもうまくいきませんでした。
ArrayList以外にいい方法があれば教えてください。、
また、もっとコードを短くする方法があれば聞きたいです。




582 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 15:29:15 ]
ジェネリックのList<float>を使え

583 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 15:35:52 ]
>>581
var farray = new[] {
 new List<float[]>{new[]{1f,2f}},
 new List<float[]>{new[]{3f},new[]{4f}}
};

584 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 15:37:34 ]
List<T>

585 名前:デフォルトの名無しさん [2008/03/08(土) 16:05:20 ]
>583
くぐってみたのですがvarが使えません。
ufcpp.net/study/csharp/ap_ver3.html
ではC#3.0の機能と書いてあるので2005では使えないのかも?




586 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 17:35:56 ]
List<float[]>[] data = new List<float[]>[14];
for (int i = 0; i < data.Length; i++)
 data[i] = new List<float[]>(new float[][] { new float[4] });
C#2.0でもいけるはず

587 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 17:41:43 ]
List<float[]>[]とか設計間違ってるとしか思えんw






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

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

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