08/06/21 17:51:22
(#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。
c++厨の嵐はスルー汁。
前スレ
C#, C♯, C#相談室 Part46
スレリンク(tech板)
その他テンプレ>>2-5くらい
2:名無しぃ♯
08/06/21 17:52:16
Visual C# 2005 Express Edition 日本語版
URLリンク(www.microsoft.com)
ふらっとC#,C♯,C#(初心者用) Part28
スレリンク(tech板)
MSDN2
URLリンク(msdn2.microsoft.com)
pinvoke.net: the interop wiki!
URLリンク(pinvoke.net)
3:名無しぃ♯
08/06/21 17:53:07
@IT Insider.NET
URLリンク(www.atmarkit.co.jp)
Insider.NET 会議室 ディレクトリ
URLリンク(www.atmarkit.co.jp)
宇宙仮面の C# プログラミング / C# Programming
URLリンク(ukamen.hp.infoseek.co.jp)
WisdomSoft C#入門
URLリンク(wisdom.sakura.ne.jp)
WisdomSoft Microsoft .NET入門
URLリンク(black.sakura.ne.jp)
どっとねっとふぁん
URLリンク(dotnetfan.org)
緑のバイク 初めてのC# ~ 覚え書き ~
URLリンク(homepage3.nifty.com)
どぼん!の .NET Tips
URLリンク(dobon.net)
4:デフォルトの名無しさん
08/06/21 17:54:26
立てた……んだが致命的にスレタイトル間違った……orz
スマンかった 次のスレはちゃんと頭のゴミ消しといてくれ
5:デフォルトの名無しさん
08/06/21 17:59:55
これはwwそれはともかく>>1乙
6:デフォルトの名無しさん
08/06/21 18:33:49
>>1 おつ、マ板になってないからぜんぜんOK!
7:デフォルトの名無しさん
08/06/21 18:44:15
スレタイがうんこ…
8:デフォルトの名無しさん
08/06/21 20:28:04
>>4
これくらい致命的じゃ無いな
次立てる事があれば気をつけてくれ
乙
9:デフォルトの名無しさん
08/06/22 00:13:20
スレタイだけでどの板に立ってるか分かるぜ
10:デフォルトの名無しさん
08/06/22 00:19:04
1000なら次はこれになる
[プログラマー板] C#, C♯, C#相談室 Part48
11:デフォルトの名無しさん
08/06/22 07:31:06
スレタイ噴いたww
笑いをくれた>>1乙www
12:デフォルトの名無しさん
08/06/22 12:39:41
VS C#でデバッグ終了時に20秒ほど待たされるのはなぜ?対処方法ありませんか?
13:デフォルトの名無しさん
08/06/22 12:43:13
気になるほど待たされたことは無い。
PCのスペックの問題か、プログラムの内容の問題と思われ。
14:デフォルトの名無しさん
08/06/22 12:55:15
スタートページを開いているとデバッグ終了時に待たされるかな
15:デフォルトの名無しさん
08/06/22 13:01:38
>>14
それだ!まさにそれだった。天ぷら物だ
16:デフォルトの名無しさん
08/06/22 13:27:08
参考になった
17:デフォルトの名無しさん
08/06/22 22:29:30
RichTextBoxではなくTextBoxで
特定の文字に色もしくは特定の文字に背景色を設定することは
不可能ですか?
不可能な場合、自作コントロールだと思うのですが、
どのように作っていくのが良いですか?
18:デフォルトの名無しさん
08/06/22 23:16:43
なんでそんなにRichTextBoxがいやなんだよw
19:デフォルトの名無しさん
08/06/22 23:33:25
はい。あの独特のスクロールが嫌なんです。
TextBoxだとホイールとかなり同期して動いてくれますが、
RichTextBoxのあの遅いスクロールが今回のモノによろしくなくて。。。
TextBoxばりのスクロールにする方法があれば、解決です。
20:デフォルトの名無しさん
08/06/23 01:47:31
いいとこどりすればいい
21:デフォルトの名無しさん
08/06/24 00:28:08
いいとこどりとは?
22:デフォルトの名無しさん
08/06/24 21:16:23
立地にしてスクロールだけなんとかすりゃいい
23:デフォルトの名無しさん
08/06/24 22:47:16
URLリンク(nijibox.ohflip.com)
3a-2b+ -1d= 7
2b+2c+ d= 5
a-2b-3c-2d=-1
b+2c+ d= 6
という行列を解くプログラムを作りたいのですがエラーが出てうまくいきません
どなたか間違えの指摘などをお願いできないでしょうか?
解き方はピポット選択で前進消去法です、お願いします。
24:デフォルトの名無しさん
08/06/24 22:53:03
Cはスレ違い
25:23
08/06/24 22:53:54
・・・(汗
指摘ありですノシ
26:デフォルトの名無しさん
08/06/26 09:58:48
すごくマニアックなDBMSを使ってるんだけど、ODBCとADO用のプロバイダしか用意してない。
これをOLEでつなぐことってできるの?ちなみにODBC-OLEブリッジは、使えなかった(例外が出る)。
27:デフォルトの名無しさん
08/06/26 12:01:01
.NET + DirectXという構成を64bit環境で使いたいのですが、Managed DirectXは
32bitしか対応していないとのことで困っています。
下のサイトで対応方法のヒントらしき情報は見つけたのですが、
すでに出来上がってるラッパーライブラリ等はないでしょうか?
URLリンク(d.hatena.ne.jp)
28:デフォルトの名無しさん
08/06/26 12:17:53
SlimDXを64bit用に再コンパイルしたらって意見が海外の掲示板にあるな
29:デフォルトの名無しさん
08/06/26 15:12:42
C#から動的にCOMのVTable Orderを取得する方法を御教授ください。
IUnknownを例とすると、下記のように表示するプログラムを作りたい
のですが、まったく方法がわかりません。
QueryInterface 0
AddRef 1
・
・
30:デフォルトの名無しさん
08/06/26 18:20:47
typelibがあるならそれから引っ張り出すしかない。
interface IWksImagingServer : IDispatch {
[id(0x00000001), propget, helpstring("property ImagingServicesInterface")]
HRESULT ImagingServicesInterface([out, retval] unsigned long* pVal);
もしid(0x00000001)のことだったら、それはDispach IDだから動的に取れる。
IDispachを実装してないI/Fには当然そんなものはない。
31:デフォルトの名無しさん
08/06/27 13:15:03
C#でNクィーンを作る方法を教えてください。
ぐぐってもほとんどjavaやCばかりで・・・・
32:デフォルトの名無しさん
08/06/27 13:15:26
応用しろ
33:デフォルトの名無しさん
08/06/27 13:16:54
BOINCでもやれ
34:デフォルトの名無しさん
08/06/27 15:57:29
いくら考えてもさっぱり分かりません。
どなたかNクィーンの勉強にいいサイトは知りませんでしょうか?
35:デフォルトの名無しさん
08/06/27 16:00:56
どうしたいのかまるで伝わらないのでエスパーでも呼べ
36:デフォルトの名無しさん
08/06/27 16:24:49
>>1
>Visual C# 2005 Express Edition 日本語版
>URLリンク(www.microsoft.com)
このスレでは2008でなく2005推奨なの?
37:デフォルトの名無しさん
08/06/27 16:42:06
>>34
まず、C#でNクイーンを解くプログラムを作りたいと => これはおk
で、現状の理解度について
・アルゴリズム(解法)を理解していない
=> スレ違いだから理解してから出直せ
・アルゴリズムを理解したうえで、C#での記述の仕方が分からない
=> 分からない箇所を具体的に書け
>>36
どれが推奨とかは多分ないはず
ただ、環境を明示しない質問は自動的に最新版(VS2008、.NET3.5、C#3.0)とみなされるが
38:デフォルトの名無しさん
08/06/27 22:19:29
>>36
変更忘れてるだけでしょ
Express入れるんだったら特に理由がなければ迷わず2008
C#な人って新しもの好きが多いし
39:デフォルトの名無しさん
08/06/27 22:26:40
リンク先はどうせ2008だしなー
40:デフォルトの名無しさん
08/06/27 22:52:58
すっかりラムダ中毒で () => がないと生きていけない体に
41:デフォルトの名無しさん
08/06/27 22:58:38
() => _| ̄|○
こうですか?わかりません(><)
42:デフォルトの名無しさん
08/06/27 23:07:36
ラムダなぁ・・・
エディットコンティニューと中からのyieldさえあれば神だったんだが。
43:デフォルトの名無しさん
08/06/28 10:57:14
yieldは大量のコードを生成するから手軽に使われたくないんだろうな
44:デフォルトの名無しさん
08/06/28 11:11:21
どこかの記事で中の人が
クロージャ内で yield 書けるようにしとけばよかったって言ってた気が。
45:デフォルトの名無しさん
08/06/28 11:48:49
今からでも変えてくれ
46:デフォルトの名無しさん
08/06/28 12:12:05
まだ C# 4.0 はプレビュー版すら出てないからなぁ。
今までの感じから言って、プレビュー版が出てからですら
正式版まで1・2年かかるから、
今、「次で対応します」と言っても、だいぶ先の話になる。
47:デフォルトの名無しさん
08/06/28 12:35:44
そこでC#3.5ですよっと
C#4.0はどんなのになるんだろ
48:デフォルトの名無しさん
08/06/29 07:55:50
そこでF#ですよ
49:デフォルトの名無しさん
08/06/30 00:24:59
C#の次期バージョンの情報はないんけ?
50:デフォルトの名無しさん
08/06/30 01:04:10
>>49
C# "Future Focus" でググると多少出てくる。
まだMS社員が「こんなアイディア持ってるよ」ってレベルで、
仕様と呼べる段階じゃないけど。
51:デフォルトの名無しさん
08/06/30 08:36:11
言語の仕様をコロコロかえんでください
それより便利なライブラリ提供してくれたほうがうれしいです
52:デフォルトの名無しさん
08/06/30 09:23:37
obsoleteになった仕様って無いんだし変えたわけではないと思うが
53:デフォルトの名無しさん
08/06/30 10:56:32
C#は言語仕様を変えたことはないよね
54:デフォルトの名無しさん
08/06/30 12:17:06
便利なライブラリってどんなの?
四次元ポケットとか?
55:デフォルトの名無しさん
08/06/30 21:34:50
匿名型を入れるコレクションを作ろうと思うと
ダミーの匿名型のオブジェクトをジェネリックメソッドの引数に渡すとか
変態的なことしないといけないのは何とかしてほしい
56:デフォルトの名無しさん
08/06/30 21:46:54
…? 無名型 Array か ToList でええやん
57:デフォルトの名無しさん
08/06/30 21:53:34
>>51
.NET 3.0, 3.5 はライブラリ追加がメインじゃん。
なんか、「Windowsプログラミングの極意」に書いてあった話思い出すな。
「見た目ばかり変えてないで中身改善しろよ」という人に限って、
「電卓、代り映えしないよね」という。
実際には電卓の中身ものすごい変わってるのに。
58:デフォルトの名無しさん
08/06/30 21:56:38
>>55
var list = Enumerable.Range(0, 0).Select(x => new { X = 0.0, Y = 0.0 }).ToList();
我ながら変態的w
59:デフォルトの名無しさん
08/06/30 21:57:27
足したり引いたりが簡単にできるVectorクラスとか?
んあに含まれてるけど、これのためだけに使うのはどうかと思う
ところでxnaってどう読めばいいの?エクセナ?クセナ?んあ?クロスナ?エックス菜?ペケナ?ゼーナ?
60:デフォルトの名無しさん
08/06/30 22:02:42
>>59
3.5 にあるよ、Vector クラス。
System.Windows.Vector と System.Windows.Media.Media3D.Vector3D。
XNA は普通にエックス・エヌ・エー。
61:デフォルトの名無しさん
08/06/30 22:13:35
WPFは3.0だぜ
62:デフォルトの名無しさん
08/06/30 22:17:56
XNA's Not Acronymed
>>59
というか Linq みたいなんは基本的に副作用、状態を途中で変えるの
嫌って書いたほうがよい。足したいなら .Concat(...) で結合。
63:デフォルトの名無しさん
08/06/30 22:20:30
あごめん、足すって binary operator みたいなのか。
64:デフォルトの名無しさん
08/06/30 22:54:37
どう考えても数学でいうベクトルのこと
65:デフォルトの名無しさん
08/07/01 22:57:13
XmlSerializerでシリアライズするとき、
要素にNamespaceを設定すると
<element xmlns="namespace-test">
~~~
</element>
ってなるけど
<test:element xmlns:test="namespace-test">
~~~
</test:element>
ってできない?
66:65
08/07/01 23:24:33
事故解決
シリアライズするクラスのメンバにXmlSerializerNamespaces入れたらできた
67:デフォルトの名無しさん
08/07/03 17:36:23
質問です><
Microsoft.DirectX.AudioVideoPlayback.Videoでビデオを開放するにはどうしたらいいですか?
Openすると前のファイルを開いたまま開いちゃうしDispose()しても開放してくれないです><
68:デフォルトの名無しさん
08/07/04 01:59:39
指定フォルダ中の Word Excell PowerPoint ファイルに
指定したパスワードを掛ける/外す処理を行うにはどうすればよいのでしょうか?
(C# や .NET で MS OFFICE ファイルを操作できると思っているのですが、無理でしょうか?)
69:デフォルトの名無しさん
08/07/05 03:27:02
URLリンク(www.atmarkit.co.jp)
最近とみに無理やり感が強くなってる気がする…
70:デフォルトの名無しさん
08/07/05 04:34:04
>>69
VBの場合見かけ上プロパティの参照が渡せるように書けるから話がややこしい
71:デフォルトの名無しさん
08/07/05 07:37:09
>>68
開くときはdocuments.openでPasswordDocumentかWritePasswordDocument
あたりのパラメータに渡してやればいいと思うが。
保存時はdocument.passwordを設定して、document.saveでいけるんじゃね?
>C# や .NET で MS OFFICE ファイルを操作できると思っているのですが、無理でしょうか?
そもそもoffceのオブジェクトにc#からアクセスする方法がわからんというレベルなら、
MSDNで調べてくれ
72:デフォルトの名無しさん
08/07/05 11:55:20
ManagementObjectCollectionのDispose呼ぶとコレクションの内容もDisposeされる?
列挙したそれぞれの要素もDisposeしなきゃだめ?
73:デフォルトの名無しさん
08/07/05 15:00:53
>>69
どうせ書くなら具体的に書けよ。
どうせ自分の感覚に自身がないから誰かが賛同してくれるの待ってるんだろ?w
実に女々しいというか悲しい奴だなあんた。
74:デフォルトの名無しさん
08/07/05 16:17:45
>>69
ネタがないんだろうな。
75:デフォルトの名無しさん
08/07/05 16:23:16
なんで川俣の記事に何かいったらやたら突っかかる奴がでるの?
76:デフォルトの名無しさん
08/07/05 16:25:11
そりゃ川俣の記事に何かいうやつが阿呆ばかりだからだろう。
77:デフォルトの名無しさん
08/07/05 16:27:15
そうなの?
78:デフォルトの名無しさん
08/07/05 16:29:55
getter setter渡すように書き換えるくらいなら変数ひとつ使えばいいのに…
79:デフォルトの名無しさん
08/07/05 20:11:20
小ネタを大げさに記事にするのって川俣の昔からの芸風ですから。
80:デフォルトの名無しさん
08/07/05 20:29:09
そういう奴はたまには技術書や教科書以外の本も読んでその偏向した感覚を
矯正した方がいいんじゃないの?w
別にああいう文体って結構ありがちだと思うぞ。
プログラミングとか工学系の本じゃ珍しいのは確かだが。
っていうかプログラミング系の日本人ライターにありがちなヲタ臭い文体の奴よりずっとましだと思うが。
「幸せになれる」だの意味なく文頭に#付けたりだの、ヲタ系のプログラマ以外一般に誰も使わない
表現や言い回しを好む奴ね。
81:デフォルトの名無しさん
08/07/05 21:04:09
ありがちだけどみんなキモク感じるだけ。
まあ別にそういうもんだと思って読むだけだが。
82:デフォルトの名無しさん
08/07/05 21:43:33
「幸せになれる」系と比べても、「マシ」だとは思えないけどな。
「人類の発展に貢献する」系に比べたら、マシには見えるけど。
83:デフォルトの名無しさん
08/07/05 22:45:02
「みんなキモく」って何を根拠に?
こういう小ネタ面白いと思うけど。
「幸せになれる」って聞くとなんとなく幸せなんだけどw
人の文体がいちいち気になるものなの?
#はメリハリついて分かり易いと思うんだけど。
84:68
08/07/06 00:24:24
>>71
やってみます。ありがとう!
85:デフォルトの名無しさん
08/07/06 20:31:48
C++のDLL(非COM)の関数(WINAPI型)から、
C#のWindowsアプリケーションに
C#からみてobject型の配列(2次元)を渡すとき、
何かいい方法はありませんか?
現状は、C++側の関数のout引数に
*variant型を設定し、C#側からobject型と
してみせて取得しようと思っています。
・・・他にいい方法があれば教えて下さい。
お願いします。
86:デフォルトの名無しさん
08/07/06 20:33:05
GCHandleまわせばいいだろ
87:デフォルトの名無しさん
08/07/06 21:23:47
>>90
「幸せになれる」ってたとえば
「hogeをプロパティにしておけば幸せになれるかもしれない」って奴のことか?
むしろ、自分以外に使う人がいたのがびっくりだが、ヲタとか関係ないだろ?(そもそも自分はヲタじゃないしな)
#を付けるのは確かに一部の人間だろうね。
でも#でコメントアウトするスクリプトや設定ファイルは結構多いから、誰にでも通じるとは思うけどね。
88:デフォルトの名無しさん
08/07/06 21:47:34
統合失調の人?
「自分以外に使う人がいたのがびっくりだが」ってw
「幸せになれる」だの「ごにょごにょする」だの、
ヲタ系プログラマ(ただし本人たちにその自覚は乏しい)しか使わない
独特の言い回しを使う奴っていっぱいいるでしょ。
89:デフォルトの名無しさん
08/07/06 21:49:57
一時期はやったような気がするけど、最近はみないような気もする > 幸せになれる
90:デフォルトの名無しさん
08/07/06 21:51:52
端的に気持ち悪いし、PGのマンガ的なステロタイプを作ってるのはこいつらなわけで、
正直消えてなくなてほしいよこういう連中は。
91:デフォルトの名無しさん
08/07/06 21:58:26
PGって略がなんか気になるんだよな。
92:デフォルトの名無しさん
08/07/06 21:58:34
川俣とかある種のオタの典型みたいなもんだしな。
93:デフォルトの名無しさん
08/07/06 22:20:44
特定の職業の連中が変わった言葉遣いをすることなんて世の中いくらでもあるだろ。
土方には土方の方言があるし、医者は医者の言葉を使うだろ。
94:デフォルトの名無しさん
08/07/06 22:29:13
だいじょうぶその読解力?
特定の職業(プログラマ)の言葉遣いを槍玉に挙げているのではない。
ヲタ系の気色の悪い連中の言葉遣いにケチをつけてるんだよ。
95:デフォルトの名無しさん
08/07/06 22:34:12
オタPGの言葉遣いが、世間のPG像のステレオタイプになってるってるから迷惑ってのはいいがかりもいいとこだろ。
メジャーなメディアで「幸せになります」とかいってるPGなんて見たことない。
96:デフォルトの名無しさん
08/07/06 22:37:44
ちゃんと小学校でてるか?
どんな読解力だよ。
>端的に気持ち悪いし、PGのマンガ的なステロタイプを作ってるのはこいつらなわけで、
>正直消えてなくなてほしいよこういう連中は
どこにも
>オタPGの言葉遣いが、世間のPG像のステレオタイプになってるってる
などという趣旨のことは書いてない。
97:デフォルトの名無しさん
08/07/06 22:39:20
じゃあ、あんたが個人的にキモがってるってだけの話か。
どうでもいい話だね。
98:デフォルトの名無しさん
08/07/06 22:49:16
>>端的に気持ち悪いし、PGのマンガ的なステロタイプを作ってるのはこいつらなわけで、
世間じゃなかったら、だれに、漫画的なイメージを持たれて「消えてほしい」と思うくらい不愉快に思ってるんだろう。
99:デフォルトの名無しさん
08/07/07 12:21:28
その実装の方が幸せになれる、って頻繁に使わないか?
100:デフォルトの名無しさん
08/07/07 12:25:30
使わないね
101:デフォルトの名無しさん
08/07/07 12:28:10
板違い
102:デフォルトの名無しさん
08/07/07 13:22:48
そっか、俺よく使うわ
103:デフォルトの名無しさん
08/07/07 20:06:34
すみません、質問です。
Visual C# 2005 Express Edition と Visual C# 2008 Express Edition にはどのような違いがあるのでしょうか。
現在のPCのOSが2000でありまして、VC# 2008をインストールすることができないと言われます。
もし両者にそれほどの差異がないのであれば2005を使おうかと思うわけなんですが。
URLリンク(codezine.jp)
は目を通してみました。
C#のバージョンが3.0になっているようなんですが、
URLリンク(ufcpp.net)
のサイトで見る限り、初心者の私がすぐに不便さを感じるようなものでもない気はしました。
後日PCを新しくしたときにXPにする予定なので、その際にVC# 2008を入れたとしても、特に問題はなさそうでしょうか?
それとも、2008で増えた機能というのは初心者でも必須ないし、あった方がよさそうなものですかね。
104:デフォルトの名無しさん
08/07/07 20:10:48
割と前に見たのだが、C#で回転するメニューが実装できるコンポーネントみたいなのがあったはずなのだが
名前が思い出せね 誰か教えてくれ
105:デフォルトの名無しさん
08/07/07 20:13:50
初心者なら2005EEでも使いこなせない程十分な機能があるよ
106:デフォルトの名無しさん
08/07/07 20:15:31
>>103
WPFやLinqが使いたいなら2008かな?あとラムダ式も使えるようになってる。
(ラムダ式ってのはデリゲートを簡単に書くための構文だな。記述法というだけだから必須ではない)
>>104
コントロールを回転・縮小・拡大したいならWPFで出来るよ。
107:デフォルトの名無しさん
08/07/07 20:40:14
>>105-106
どもども、ありがとうございます。
PC買い換えまでは2005でやってみます。
108:デフォルトの名無しさん
08/07/07 21:12:38
>>104
標準ではなくてフリーライブラリだけど、カルーセル?
109:デフォルトの名無しさん
08/07/07 21:23:02
>>106
WPF使うってのもありか
>>108
いや横に回転するのではなくて円形に回転するやつ
URLリンク(www.forest.impress.co.jp)
みたいなのに近い
どこかの会社が無料で出してた気がするのだが
110:デフォルトの名無しさん
08/07/07 21:44:40
前にスラッシュドットで取り上げられてた気がする
WPFでの実装だったと思うけど
111:デフォルトの名無しさん
08/07/07 21:51:13
>>110
あったありがとう
URLリンク(slashdot.jp)
これで安心して眠れる
112:デフォルトの名無しさん
08/07/07 21:54:21
回転するメニューってものの操作性がピンとこないのは
俺の想像力が欠如してるせい?
っていうかうっとうしくないのかなそれw
113:デフォルトの名無しさん
08/07/07 22:58:24
>>112
回転メニューの有用性はスターオーシャンと聖剣伝説で実証済み
テイルズシリーズでも採用されてたっけ?(テイルズはやらないので知らない)
114:デフォルトの名無しさん
08/07/07 23:07:13
リングコマンドはスケーラビリティや情報量が低いため使える範囲はかなり狭い
115:デフォルトの名無しさん
08/07/07 23:26:47
>>113
なんか視野狭窄というか、オレサマ=世界のいわゆる「セカイ系」の人?
君が思ってるほどゲームをやる人種ってのは多くないんだよ。
少なくとも俺はゲームなんてまったくやらない。
そんな一方的にそのスターなんたらを知ってる前提の話をされてもね。
116:デフォルトの名無しさん
08/07/07 23:32:24
無知な上ググる事もできない奴が偉そうに言ったところで
117:デフォルトの名無しさん
08/07/07 23:57:32
リボンとかドッキングとかってSP1で追加されるんだっけ?
いつでるんだっけ?
118:デフォルトの名無しさん
08/07/08 00:07:04
しらないけど来るならWPFじゃね
119:デフォルトの名無しさん
08/07/08 00:14:49
>>117
SP1 で追加されるのは MFC 版。
MFC Feature Pack っていうんだけど、英語版はすでに正式版が出てる。
日本語は VS 2008 SP1 に同梱。
WPF のリボンは年末くらいを目標に作ってるらしい。
ドッキングは不明。
120:デフォルトの名無しさん
08/07/08 00:38:41
>>115
ググれば直ぐ見つかるような有名なゲームだし、最悪分かる人に分かれば良い内容です。
(さすがにSO2とか略したら二酸化硫黄と区別つかないけどなw)
そもそも、「俺の分かる話しかするな」って言われたら…
本「期待値とは物理で言うところの重心です。(期待値も重心も相加平均です)」
A「ああ、なるほど。」
B「物理なんて知るか。この本、腐ってやがる。出版社に文句言おう!」
…なんて事になるからそんな事言う人はいないよね?
121:デフォルトの名無しさん
08/07/08 00:45:15
馬鹿はしょうがないな。
その物理学(学問の最高峰)とゲーム(たかだか「お前」が知ってるだけ)を
並列することになんの疑問も抱かないようなメンタルを「セカイ系」と呼ぶんだよ。
122:デフォルトの名無しさん
08/07/08 00:50:38
↑マジ脳みそ腐ってんじゃね?
123:デフォルトの名無しさん
08/07/08 00:56:08
そんなだからセカイ系とか言われるんだよ
124:デフォルトの名無しさん
08/07/08 00:56:58
>>121
( ゚д゚ ) セカイ系 の検索結果 約 456,000 件中 1 - 10 件目 (0.24 秒)
StarOcean の検索結果 約 3,360,000 件中 1 - 10 件目 (0.28 秒) ( ゚д゚ )
( ゚ д ゚ )
さすがに物理で検索したら136,000,000越えるけど、君の言うセカイ系って何?スイーツ(笑)みたいなやつ?
125:デフォルトの名無しさん
08/07/08 00:57:47
糞スレ
126:デフォルトの名無しさん
08/07/08 01:01:27
釣りだろ
じゃなかったら馬鹿過ぎる
127:113=120=124
08/07/08 01:07:22
sage忘れスマソ
で結局、RingMenuって便利なの?
RingMenuForOSは起動しないし、SDKは相変わらず登録が必要だし…だれか感想求む
128:デフォルトの名無しさん
08/07/08 01:47:32
家庭用ゲーム機のような入力装置に制限のある場合は有効だろうけど、
PCではどうだか。
129:デフォルトの名無しさん
08/07/08 03:43:50
というよりマウスではどうだかだけど、キーボードからなら割合ありな
気がする。使ってないけど聖剣あたりの記憶をたどってみると。
Alt(Win) + Tab みたいなかんじでくるくるみたいな。
130:デフォルトの名無しさん
08/07/08 03:53:14
リングメニューは一番裏まで回すのが面倒くさすぎ。
ポインティングデバイスもアルファベットの刻印されたキーもない環境専用だろ。
131:デフォルトの名無しさん
08/07/08 10:07:02
アイコンの方がダイヤルみたいに回るだけ?
例えば12時にカーソルがあって6時を選択したい時は左右キーでアイコンを回すって感じ?
カーソルの方が動くんだったら下キーで一発だけど。
132:デフォルトの名無しさん
08/07/08 17:21:18
リングメニューってこれ?
URLリンク(www.ringmenu.jp)
133:デフォルトの名無しさん
08/07/08 22:44:36
Compact frameworkで.net Remotingが使えないのですが、RPCをやる方法って他にないですかね?
とりあえず、XML-RPC.netが使えそうなんですが、他に何かいい案は、ないでしょうか。
134:デフォルトの名無しさん
08/07/08 23:25:43
圧縮しなくてもいいので、ファイルをひとつにまとめたい時ってどうすればいいんでしょうか。
Jpegファイルを集めて、先頭に取り出すための情報を詰めて、後でまた戻すといったやり方がしたいんです。
135:デフォルトの名無しさん
08/07/08 23:28:09
>>134
* tar
* 非圧縮zip
136:デフォルトの名無しさん
08/07/08 23:46:34
そもそも書庫ファイルというのはだな、
137:デフォルトの名無しさん
08/07/09 01:40:32
>>134
それをC#で書きたいのか?、ツール使いたいのかハッキリしろ。
もしツールなら、スレチだボケ!
138:デフォルトの名無しさん
08/07/09 12:22:53
C#2008 Express WPFアプリケーション
UserControlから派生した独自コントロールを作ってます。
Disposeが必要なリソースを扱ってるため、Unloadedイベントで後始末を行ってるのですが
明示的に親要素から削除すれば呼ばれるのですが、ウィンドウを閉じた場合には呼ばれませんでした。
ウィンドウを閉じた時にコントロールに通知されるイベントはありませんか?
139:デフォルトの名無しさん
08/07/10 13:00:36
VC#2005Expressを使って下記プログラムを作成しています。
・IMEに文字情報を与えて変換候補の一覧を取得
Imm32.dllをインポートする部分はわかったのですが
ImmGetCandidateList関数に渡す変換候補一覧を格納するバッファの構造体
の定義の仕方などがよくわかりません。
またImmGetCandidateList関数はいきなり使って大丈夫なのでしょうか?
ハンドルとかいろいろ渡すようなのですが・・・
140:139
08/07/10 13:11:45
宿題のほうへいきます。
こちらは無しでお願いします。
141:デフォルトの名無しさん
08/07/10 13:21:48
昔ターミナル作った時にやったな
142:139
08/07/10 13:23:12
C#以前のサンプルは見かけるんですが、C#にどのようにもってくればいいのかわからずorz
143:デフォルトの名無しさん
08/07/10 14:55:21
public class Hhoge<A,B> where A:new(){}
は当然いけるのだけど
public class Hhoge<A,B> where A:new(B){}
ができない(Aの型を、Bが引き数のコンストラクタを持つクラスだけにしたい)
こういう制限ってかけることできないのかな
144:デフォルトの名無しさん
08/07/10 15:03:46
できない
145:143
08/07/10 15:06:43
>>144
ありがとうございます
できない理由とか解説してるページって知りませんか?
146:デフォルトの名無しさん
08/07/10 15:08:45
>>145
理由も何もコンストラクタ制約はnew()以外にないから
147:デフォルトの名無しさん
08/07/10 22:45:42
URLに全角文字を指定する際によく使われる%xx%xx%xxといった形式に
変換する関数とかありますでしょうか?
148:デフォルトの名無しさん
08/07/10 22:47:01
>>147
つURLリンク(www.atmarkit.co.jp)
149:147
08/07/10 23:00:21
>>148
ありがとうございます。
150:デフォルトの名無しさん
08/07/11 02:03:35
label1.Textからlabel2と代入していく場合、
forループ内ではどうやって記述したらいいのでしょうか?
やっぱり事前に配列を作る等の下準備が無いと駄目ですか?
151:デフォルトの名無しさん
08/07/11 03:27:51
あなたの望む仕様がわかりませんがエスパーで答えてみます。
何度も呼ぶ場合は配列を作った方がいいと思います。
foreach (Control c in this.Controls)
{
Label l = c as Label;
if (c == null) continue;
if (l.Name.StartsWith("label") & int.Parse(l.Name.Substring(5)) > 1)
l.Text = Label1.Text;
}
152:デフォルトの名無しさん
08/07/11 03:32:28
上のはcのnullチェックしてもしょうがないな。
てかfor文で書くのか。
for (int i=2; i<=5; i++)
{
Label l = this.Controls.Find("label" + i.ToString(), false)[0] as Label;
l.Text = Label1.Text;
}
153:デフォルトの名無しさん
08/07/11 09:35:33
>>143
コンストラクタでAを作るためのデリゲート(Func<B, A>とか)を受けたらいいんじゃね
154:デフォルトの名無しさん
08/07/11 09:51:10
ASP.NET(C#) でWEBカスタムコントロールを作ろうとしています。
Tableクラスを継承して機能を上乗せして作ろうとしているのですが
カスタムコントロールタグの中にTableRowを入れその中にTableCellをタグで指定することができません。
なんとなくParsistsChild 辺りなのかなと思うのですがいかんせんMSDNの記述が読み取りにくくて・・・・
実現したいのは以下のような記述をデザイン時にタグで入力して
実行時にテーブルとして吐き出す事です。
<CustomTable id="hoge" runat="server">
<TableRow>
<TableCell>
1行1列
</TableCell>
</TableRow>
< /CustomTable>
なにかサンプルとかサイトでも構いませんので情報いただけませんか?
よろしくお願いいたします。
155:デフォルトの名無しさん
08/07/11 11:10:52
あぁぁーハングアップするぅーー
マルチスレッドうまく出来ないーヽ(`Д´)ノウワァァン
156:デフォルトの名無しさん
08/07/11 11:12:21
>>155
つBackGroundControl
157:デフォルトの名無しさん
08/07/11 11:15:45
>>155
デッドロック?
158:デフォルトの名無しさん
08/07/11 11:16:29
BackGroundWorker?
159:デフォルトの名無しさん
08/07/11 11:16:53
>>158
ですよね~
160:デフォルトの名無しさん
08/07/11 11:32:53
BackGroundWorker!
161:デフォルトの名無しさん
08/07/11 11:46:19
BackgroundWorker!
162:デフォルトの名無しさん
08/07/11 11:47:16
BackgroundFucker!
163:デフォルトの名無しさん
08/07/11 11:49:13
BlackGroundWorker!
164:デフォルトの名無しさん
08/07/11 14:04:13
背景労働者(T_T)
165:デフォルトの名無しさん
08/07/11 15:20:43
最初にButtonClickイベントでRunWorkerAsync()をする。
次にDoWorkで通信待ちをしていて、通信を受け取ったらそのイベントでFormのプロパティ書換えを連続でしたいんだ。
それで、そこからButtonClickイベントでRunWorkerCompletedに移動したいんだ。
それでもって同じButtonClickイベント内でRunWorkerAsync()をしたいんだけど、どうしたらいいのかわからない・・・
buttonClick(){
RunWorkerAsync();
}
DoWork(){
通信メソッド();
}
ChangeValue(){//通信メソッドの受け取ったよevent
}
RunWorkerCompleted(){
}
166:デフォルトの名無しさん
08/07/11 15:28:23
全体に何を言いたいのか何が分からないのか良く分からん
連続でってどういう連続? 移動って何? RunWorkeAsyncが二回出てきてるの?
167:デフォルトの名無しさん
08/07/11 15:35:46
なんだ?
・ボタン押す
・通信データを受け取ることができたら非同期通信完了
・別のボタンで通信完了後の処理を行う
こういうことなんか・・・・?
168:デフォルトの名無しさん
08/07/11 15:48:13
ProcessStartInfoでコンソールがチラッと開くんですが、
これは開いたままにできないんでしょうか。
169:デフォルトの名無しさん
08/07/11 15:54:19
実行するプロセスはcmd.exeにして/kつきで実行すれば?
170:デフォルトの名無しさん
08/07/11 16:11:15
VS2005で任意の型(ただしdoubleに変換可能、実際の想定はfloatとdouble)の配列における最大値を求めたくて
こんな関数を作りました。
public double Max<T>(T[] src, int offset, int length)
{
double ret = double.MinValue;
int end = offset + length;
for(int i = offset ; i < end; i++)
{
double val = System.Convert.ToDouble(src[i]);
if(val > ret)
ret = val;
}
return ret;
}
で、かなり大きなfloat配列(要素数10万オーダー)をこの関数にかけたら、
この関数が実行される前後でこの関数を動かしているプロセスのLOHが数十MB単位で増殖してしまいます。(perfmonで確認)
forループが怪しそうなんですが、どこでLOHをつかまれるのか見当がつきません。
調べ方が甘いのかもしれませんが、お分かりの方いらっしゃいますか?
171:デフォルトの名無しさん
08/07/11 16:11:44
ありがとうございます。
コンソールはでてるんですが、Argumentsが渡らないんですが、これはどうしたらいいんでしょう。
172:デフォルトの名無しさん
08/07/11 16:16:03
>>170
何で必ずDoubleに変換を・・・・・
173:デフォルトの名無しさん
08/07/11 16:17:05
>>172
関数を使う側でそういう要求があるということで…。
174:デフォルトの名無しさん
08/07/11 16:18:40
>>166-167
ごめんね、よくわからんアマチュアでごめんね
1.ボタン押す
2.任意で終了させるまで同期通信でデータを受け取る
3.最初のボタンで通信完了の処理をして、新しい同期通信を始める
同期通信がいつ終わるかわからんので、
RunWorkerCompleted()を開始できないのです。
175:デフォルトの名無しさん
08/07/11 16:20:27
>>165
別のスレッドでフォームを書き換えるの?それは無理
[STAThread] <-
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
176:デフォルトの名無しさん
08/07/11 16:21:05
>>170
LOHに何があるか、専用のデバッガやプロファイラで調べられなかったっけ?
CLRProfilerやsos.dllを使えばできそうな気がするよ。
177:143
08/07/11 16:24:22
>>153
できたっ
ありがとうありがとう
178:デフォルトの名無しさん
08/07/11 16:27:06
>>176
ちょっとそのあたりのツールを調べてみます。ありがとうございました。
179:デフォルトの名無しさん
08/07/11 16:28:15
>>174
それって最初のボタンのクリックイベントの最初に
非同期通信中だったら非同期通信キャンセルなり終了させるような処理書けばいいのでは?
その完了を待って再度非同期通信を開始すればよいのでは
180:デフォルトの名無しさん
08/07/11 16:30:31
>>175
>別のスレッドでフォームを書き換える
スレッドからフォームのプロパティを書き換えるのではなく、
同期通信のメソッドが通信を受けた時のイベントがあるんです。
そのイベントの中でフォームを弄るので、簡単に言えば、
ButtonClickイベントが起きたら通信メソッドをDispose()出来れば良いんです。
ですが、DoWork()内にButtonClickをどう通知したら良いのかわかりません。
181:デフォルトの名無しさん
08/07/11 16:33:08
>>180
IsBusy
CancelAsync
こんな感じのメソッドとプロパティなかったか?wwww
182:168
08/07/11 16:34:11
FileNameに"/c"パラメータとかつける方法ありませんか。
183:デフォルトの名無しさん
08/07/11 16:40:19
>>179 >>181
ButtonClickイベントの中で
BackgroundWorker.IsBusyでスレッドの使用を確認して、
動いていたらCancelAsyncを呼び出せばRunWorkerCompletedイベントが発生する訳ですね。
よくわかりました、ありがとうございます
184:デフォルトの名無しさん
08/07/11 16:51:07
一応いっとくけどCancelAsync呼んだだけじゃRunWorkerCompletedは発生しないぞ
CancelAsyncの解説読めば分かることだけど
185:デフォルトの名無しさん
08/07/11 17:12:52
object result = type.InvokeMember("test", BindingFlags.InvokeMethod | BindingFlags.Public | BindingFlags.Static, null, null, new string[1] { "sample" });
ってDLLを動的に呼び出して MyClass1 ってのを返すんだけど
object型のresultをMyClass1にキャストする方法がわからないのだが誰かヒントでも良いから助けて
186:デフォルトの名無しさん
08/07/11 17:17:16
>>185
動的にDLL呼び出しができてキャストできないとか・・・・・
(T)
187:デフォルトの名無しさん
08/07/11 17:23:16
きっと「動的にキャスト」みたいなこと考えてるんだろう
188:デフォルトの名無しさん
08/07/11 18:00:26
MyClass1返すならなんで動的に呼ぶ必要があるんだよ
まあこれはMyClass1が対象のアセンブリに含まれてると仮定した場合だが
MyClass1を静的に参照してるんじゃなきゃキャストなんてできるわけがないぞ
189:デフォルトの名無しさん
08/07/11 18:03:13
解決しました
第三のDLLかましてあげればよかったんですね
190:デフォルトの名無しさん
08/07/11 18:07:32
>>170
>任意の型(ただしdoubleに変換可能、実際の想定はfloatとdouble)
ならdouble決め打ちでいいんじゃね?
って思うんだが駄目ですか
191:デフォルトの名無しさん
08/07/11 18:15:15
double[]引数にはfloat[]を与えられない
192:デフォルトの名無しさん
08/07/11 18:25:51
つうかキャスト動作が食ってるとかありえないのかな?
何万も回せばコストはでかいと思うんだが
外からは意識しないように内部で分岐させて処理してみればよくねぇか?
この分だとキャストは一回だけで終わりそうな感じがするんだが・・・
193:デフォルトの名無しさん
08/07/11 18:34:48
>>189
第3のDLLのはインターフェイスにしておくと融通が利く。
194:デフォルトの名無しさん
08/07/11 18:44:04
>>170
<T>[]で受けると型が特定されなくてそのままSystem.Convert.ToDoubleが呼ばれる
結果的にもう1つ<T>[]を作っている感じな予感。
float[],double[]で受けると最適化されてSystem.Convert.ToDoubleは呼ばれない。
195:デフォルトの名無しさん
08/07/11 18:48:26
IConvertibleで制約してhoge[i].ToDouble(null)とか
196:デフォルトの名無しさん
08/07/11 18:55:15
>>173
return直前にdoubleにすればいいだろ。
197:デフォルトの名無しさん
08/07/11 18:57:26
Tのままじゃ比較できないじゃん
198:デフォルトの名無しさん
08/07/11 19:00:52
比較はCompareToかな。それよりT.MinValueって使えるのかな
199:デフォルトの名無しさん
08/07/11 19:18:12
lengthがゼロならMinValueを返すのが仕様なら仕方ないが
普通初期値は配列の最初の要素だろ。
T ret = src[offset];
200:デフォルトの名無しさん
08/07/11 19:36:11
総称型の場合Convert.ToDouble(Object)でボクシングが
大量発生してヒープを使いすぎるのはわかるがLOHが使われるのは解せんね。
201:デフォルトの名無しさん
08/07/11 19:55:28
>>170
じつはToArrayでラージオブジェクトヒープを使っているとか言うオチだったり
List<int> arr = ..
double ans = Max(arr.ToArray(), 0, ar.Count);
202:デフォルトの名無しさん
08/07/11 19:58:18
>>199
そうなんだけどT.MinValueが使えるのかが気になった。
Length==0なら例外投げるのが妥当だよね。
203:デフォルトの名無しさん
08/07/11 21:42:05
相談です。
C#3.0(2.0でも可)にて
PDFからオブジェクトの取得をしたいと思っています。
PDFはベクトルデータであることが前提で、ラスタデータは考慮しません。
●抽出
テキストデータは テキスト、フォント、サイズ、座標を取得
画像データは 画像、座標を取得
各データにジャンルを割り当てDBに保存
●復元
テキスト、フォント、サイズ、座標からPDFに復元する。
その座標に画像も存在していれば画像も復元する。
何か良い方法はご存知でしょうか?
204:デフォルトの名無しさん
08/07/11 21:45:08
>>203
本屋でPDFの仕様書を見たことがあるから、amazonで探せばあるんじゃね?
英語なら買うまでもなく、ネットでもありそうだけど。
205:203
08/07/11 23:43:25
>>204
PDF仕様書の英語版はWebで公開されてます。
日本語版の仕様書は本で出てます。
PDFの使用がわかってもC#でPDFを扱う術(COMやSDKなど)がわからないのです。
iText,PDF4NET, PDFLib など様々なものを試していますが、これというものがありません。
画像抽出に関しても、抽出するだけならできるが、座標の取得などは不明だったりします。
206:デフォルトの名無しさん
08/07/12 00:15:58
つかライブラリ使うつもりなら、仕様書まで読む必要ないよ。
207:デフォルトの名無しさん
08/07/13 03:14:35
>>205
そこに挙げてる既存のライブラリで満足できないなら、新しいのを書くしかないだろ。
208:170
08/07/13 08:05:41
170ですが、遅くなって申し訳ありません。まだ解決したとはいえないのですが、>>194っぽい気がしています。
なお、最初に書いた文章が改行大杉と言われたので改行減らしています。読みにくいかもしれません。すみません。
とりあえず
public double Max<T>(T[] src, int offset, int length)
{
double ret;
if(src is float[])
{
float[] srcFloat = src as float[];
int end = offset + length;
for(int i = offset ; i < end; i++)
{
double val = (double)srcFloat[i]
if(val > ret)
ret = val;
}
}
else if(src is double[])
{
(略。明示的キャストをしないこと以外はfloatと同じ)
}
return ret;
}
というようにfloat[]、double[]の型に変換してからキャストするようにするとLOHを食う現象は見られなくなりました。
ただ、今でもキツネにつままれたような気分は抜けないので、もう少し元のコードだと何をやっているか調べてみようと思っています。
>>200で指摘があるように、キャストでヒープを消費するのはわかるんですが、Gen0やGen1ならともかくLOHを食うのは相変わらず解せないので…。
また何かわかったら報告します。ありがとうございました。
209:170
08/07/13 08:07:17
あと、>>208のコードでは対応していませんが、
・キャストは最後に1回やればいい(float、doubleに決め打ちできれば可能)
・Tで受けずに最初からfloat[]、double[]で受けるほうがいい
というのも納得しています。追って対応しようと思います。
ありがとうございました。
210:デフォルトの名無しさん
08/07/13 08:29:38
そうまで限定するならoverloadしたほうが早いような。
211:170
08/07/13 09:29:10
>>210
「Tで受けずに最初からfloat[]、double[]で受けるほうがいい」
はoverloadにすることを考えて書いてました。
212:170
08/07/13 09:31:16
細切れですみません。いずれにしても
>>170のコードだとなぜLOHを侵食する?
という大本の疑問はまだ謎のままなので、
追い追いプロファイラとかで調べてみようと思っています。
213:デフォルトの名無しさん
08/07/13 13:11:43
何かよくわかりませんが、これ↓
やねう企画代表者やねうらお(本名・磯崎元洋)が
・ソフトウェアの不正コピーを行っていた
・労働契約上の違反をしていた
・他は不正コピーしていないことを証明しようとしてエロゲーのパッケージを発見し、
写真に撮ってアップロードしようとした。
URLリンク(d.hatena.ne.jp)
やねう企画の裏側(競馬の詐欺ソフトの製作現場)
URLリンク(d.hatena.ne.jp)
URLリンク(d.hatena.ne.jp)
URLリンク(d.hatena.ne.jp)
有限会社やねう企画(所在地・大阪府八尾市末広町2-1-2)が計画倒産
URLリンク(www.sia.go.jp)
やねうらおプロフィール
性格:友達から「チンピラ」「ヤクザ」と呼ばれている。前世で殺人鬼だった宿業を背負っているという妄想(自覚)あり。
最終学歴:専門学校卒
主な職歴:有限会社センキ(凌辱系アダルトゲームの製作会社)を経て独立、有限会社やねう企画を設立、2006年に計画倒産
代表作:『夜這いマニア』『盗撮マニア』『お楽しみCDシリーズ』『競馬詐欺ソフト』『BM98』
やねうらお語録
>「ワシのほうが潔癖やと思うんやけどな。
>絶対に違法コピーのソフトしか使わんし。
>たとえば強盗に入ったときに、ちょっとかわいそうになって
>十万円だけ残してったら、おかしいやろ?
>自分の『強盗する』という意思に対して矛盾やろ?
>だからワシは、一個も買ったソフトを使ったことがない!!」
214:デフォルトの名無しさん
08/07/13 13:15:09
コピペ君って馬鹿だな、まで読んだ。
215:デフォルトの名無しさん
08/07/13 13:21:57
最近、やねうらおは弓月(>>213)とか言う真性のキチガイに絡まれている
【自作自演】弓月城太郎氏に関するまとめ【神秘体験】
URLリンク(d.hatena.ne.jp)
216:デフォルトの名無しさん
08/07/13 13:57:02
コピペ君って馬鹿だな、まで読んだ。
217:デフォルトの名無しさん
08/07/13 14:00:45
こっちにまではってやがるw
218:デフォルトの名無しさん
08/07/13 21:54:07
ここまでコピペ
219:デフォルトの名無しさん
08/07/14 11:21:45
何度かここで質問しようとした事があるんだけど、なんでだろう。
書き込みボタン押す直前に閃いて解決してしまう。
220:デフォルトの名無しさん
08/07/14 16:34:41
日記はチラシの裏に
221:デフォルトの名無しさん
08/07/14 16:44:41
やだね
222:デフォルトの名無しさん
08/07/14 17:44:05
じゃあチラシの表でいいや
223:デフォルトの名無しさん
08/07/14 17:45:26
やだね
224:デフォルトの名無しさん
08/07/14 18:46:51
今作ってるプログラムが500行超えた
こんなに長いコード書くの初めて・・・
フォームアプリケーションってめんどいね
225:デフォルトの名無しさん
08/07/14 18:57:13
むしろそんなに大きくないファイルがたくさんできないか?
と思ったら500行か、、、、そりゃテストコード書くんでもなけりゃ
あっというまだべ。
226:デフォルトの名無しさん
08/07/15 12:24:44
データバインドとか使わずに愚直コピーしてるとか?
それでも500ぐらいあっと言う間だろうけど
227:デフォルトの名無しさん
08/07/15 22:48:06
UI絡みは長くなるの仕方なかろう
228:デフォルトの名無しさん
08/07/16 17:14:27
チラシって普通両面に印刷されてるよね。
そういえば昔は片面印刷だったっけ。
229:デフォルトの名無しさん
08/07/16 17:15:27
どことまちがえてるんですか?w
230:デフォルトの名無しさん
08/07/16 22:07:19
マーシャリングについて教えてくれ。
C#からCで書いたDLLのGetImageを呼び、ImageProcデリゲートで画像のデータを受け取りたいんだが、
ImageProcデリゲートの第一引数を何と書いていいか分からない…
【C側】
typedef void (*ImageProc)(unsigned char* pImageBuffer, unsigned int imageSize);
__declspec(dllexport) void GetImage(char* pFileName, ImageProc pImageProc)
{
unsigned char* pImageBuffer = 0; //画像バッファ
unsigned int imageSize = 0; //画像サイズ
//中略:pFileNameの画像を開き、pImageBufferを動的確保し、
//pImageBufferに画像のデータを、imageBufferSizeに画像のサイズを入れる。
pImageProc(pImageBuffer, imageSize);
}
【C#側】
↓???を何と書いていいか分からない…
public delegate void ImageProc(???, UInt32 imageSize);
231:デフォルトの名無しさん
08/07/16 22:16:41
IntPtr
232:デフォルトの名無しさん
08/07/16 22:28:42
string
233:デフォルトの名無しさん
08/07/17 08:51:39
byte[]でいいんじゃね?
推奨できないけどどうしてもというならunsafeつけてbyte*とか
234:デフォルトの名無しさん
08/07/17 11:07:03
正直受け側の実装次第
235:デフォルトの名無しさん
08/07/18 09:35:50
脱線するけどBitmap.LockBitsじゃダメなのか
236:230
08/07/18 11:15:25
>>231で行けました。THX!
【c】
#include <windows.h>
typedef void (CALLBACK* ImageCallBack)(VOID* pImageBuffer, UINT32 imageSize);
【c#】
public delegate void ImageCallBack(IntPtr pImageBuffer, UInt32 imageSize);
public static void ImageCallBackHandler(IntPtr pImageBuffer, UInt32 imageSize)
{
byte[] imageData = new byte[imageSize];
imageData.Initialize();
Marshal.Copy(pImageBuffer, imageData, 0, imageData.Length);
}
237:デフォルトの名無しさん
08/07/18 22:27:57
VisualStdio2005なんですが、使用する.netFrameworkを1.1にして開発に使用する事って可能ですか?
238:デフォルトの名無しさん
08/07/18 22:30:37
いいえ
239:デフォルトの名無しさん
08/07/19 01:03:13
実はできなくもなかったりするんだが、いろいろと面倒なんでお勧めしない。
240:デフォルトの名無しさん
08/07/19 14:35:26
ListViewの詳細表示モードで、ダウンロードの進歩状況を表示するような・・・
例えば、WinnyなどのP2Pソフトによくある横棒グラフに % 表示があるような
ものを表示したいんですが、どのように実装したらいいでしょうか?
とりあえずオーナードローでサブ項目にRectangleで描画したりしてみましたが
あまりにも遅くて実用的ではありません。
もっと効率的な方法があるのでしょうか?
241:デフォルトの名無しさん
08/07/19 14:36:40
それはおそらく実装の方法に問題がある。
そんなに遅くなるはずがない。
242:デフォルトの名無しさん
08/07/19 14:46:42
>>241
いや、それが試しにRectangleの描画処理だけを入れただけのものなんで
ほとんどこれが最少の処理なんですよ
確か、Winnyを作っていた47氏も描画の遅さに悩んでいた記憶があるので
もともとどうやってもある程度の遅さはしょうがないのかもしれませんが
オーナードロー以外にもっと上手い方法があれば教えて頂きたいのですが
243:デフォルトの名無しさん
08/07/19 14:57:24
その部分のコード晒せば今日暇だから改良してみようか
晒せないならしょうがないけど
244:デフォルトの名無しさん
08/07/19 15:13:27
ListViewのDetailモードはバギーだからさもありなん、という気もする。
245:デフォルトの名無しさん
08/07/19 15:21:43
>>243
上記した通り、四角の描画しかしていないんですが
具体的に書きますと
if (e.ColumnIndex == 3) {
e.Graphics.FillRectangle(Brushes.Red, e.Bounds.Left, e.Bounds.Top, percent, e.Bounds.Height);
}
の処理を入れてあるだけの、最小限の物です。
他の余計な処理は一切していません。
246:デフォルトの名無しさん
08/07/19 15:23:38
描画処理が何回呼ばれてるかとか描画に何ms掛かってるかとか調べてみたら
247:デフォルトの名無しさん
08/07/19 16:37:44
>>245
そんなんじゃわからん
普通に軽いのができてしまったぞ
248:デフォルトの名無しさん
08/07/19 17:34:04
ほかの部分が重いんじゃないか?
追加部分をコメントアウトして確認
249:デフォルトの名無しさん
08/07/19 18:43:16
俺のもめちゃ軽い。ちらつきはDoubleBufferedで抑えてみた。
250:デフォルトの名無しさん
08/07/19 19:06:50
追加するときに重いとかいうオチだったり?
251:デフォルトの名無しさん
08/07/19 19:09:28
どうせListViewだし、
0u2007 FIGURE SPACE
0u2588 FULL BLOCK
0u258C LEFT HALF BLOCK
0u2590 RIGHT HALF BLOCK
の手抜きでいいじゃんとか思ってしまう
虫食いなしなら、1/8のまで使えるし
一応こんな感じに
URLリンク(www.imgup.org)
252:デフォルトの名無しさん
08/07/19 19:09:34
実は実行環境が驚くほどプア
253:デフォルトの名無しさん
08/07/19 19:31:09
>>244
ListViewといえばDetailなのにバグ多いよね。
そして改善されない。
254:デフォルトの名無しさん
08/07/19 19:40:35
うわ、疲れて寝てしまった。
>>247
でも、これしか書いてないから他の部分無いんですよ、全く。
>>248
上にも散々書きましたが、他の処理は無いのです。
ListView検証の為にTestListViewというプロジェクトを作って
フォームにListViewを貼り付けただけのプロジェクトなので
描画処理部分以外も、余計な処理が全く無いんですよ。
>>249
やっぱり軽いですか。何で重くなってしまうのか・・・
>>250
動的にデータを追加することは無いです。
>>251
うわ、昔を思い出す処理ですね(w
MSX の SCREEN 1/2 でやっていた時に
そんな感じでゲームのパラメータそんな感じでやってたなぁ
>>252
Pentium-M 1.6GHz なので、それほどプアでも無いと思うのですが。
255:デフォルトの名無しさん
08/07/19 20:46:38
Debugつうオチではない?
256:デフォルトの名無しさん
08/07/19 22:32:15
そんだけのプログラムならうpすればいいのに
257:デフォルトの名無しさん
08/07/19 22:38:16
サブ項目は、一つ一つがリソースを消費するから
数によってはかなり重くなってメモリを消費すると思うが
それとは違う?
258:デフォルトの名無しさん
08/07/19 23:06:06
自分のは10万個とか追加したらスクロールバーでのスクロールははっきり重くなった
マウスホイールでのスクトールは軽いままだけど
259:デフォルトの名無しさん
08/07/19 23:22:24
配列かリストのスライスとかないんでしょうか。
260:デフォルトの名無しさん
08/07/19 23:22:53
自分で作ってください…
261:デフォルトの名無しさん
08/07/19 23:24:17
ちゅうかまず描画の頻度がどの程度なのよ
262:デフォルトの名無しさん
08/07/19 23:28:01
そりゃWM_PAINTとんでくる度だろ
263:デフォルトの名無しさん
08/07/19 23:36:49
オーナードローって言ってるのにねぇ
264:デフォルトの名無しさん
08/07/19 23:41:58
>>254
プロジェクド丸ごとうpしろよ
原因見つけてやるから
265:デフォルトの名無しさん
08/07/19 23:52:00
馬鹿はレスしなくて良いと思うんだ
266:デフォルトの名無しさん
08/07/20 00:02:49
じゃあお前レスすんな
267:デフォルトの名無しさん
08/07/20 00:07:23
オーナニードローのパフォーマンスが悪いのは仕様だと思う。
268:デフォルトの名無しさん
08/07/20 00:10:48
>>267
言いたかっただけだろw
269:デフォルトの名無しさん
08/07/20 00:20:08
俺もやってみたが軽かった
どんな糞コード書けば重くなるんだ?
270:デフォルトの名無しさん
08/07/20 01:09:26
バーの長さをe.SubItem.Textでパーミル指定とかしてみたけど、
10万個の項目でもスムーズに動く。スクロールも無問題
因みに、環境はPemM 1.7GHz/mem 1GB
271:デフォルトの名無しさん
08/07/20 01:16:30
そういえば、カスペが入ったPCでデバッグビルドを動かした時に、
異様に遅くなったことがあったな。
コンボボックスを開くのに数秒かかったり。
VSを信頼するアプリに設定してプロセス動作の監視対象から外したら
普通に動くようになった。
272:デフォルトの名無しさん
08/07/20 12:40:04
こんな親切なレスの流れはひさしぶり
273:デフォルトの名無しさん
08/07/20 13:12:32
火スペって何?
まさか名取裕子とか出てくるドラマ枠のことじゃないだろうし
274:デフォルトの名無しさん
08/07/20 13:28:30
ググれば一発で出てくるのに
しかも、一番上に
275:デフォルトの名無しさん
08/07/20 13:33:21
質問者の反応が悪いな
諦めたんかね
276:デフォルトの名無しさん
08/07/20 15:41:54
カスペ、監視からjustの扱ってるアンチウィルスソフトだとわかると思うんだがなぁ。
これくらいは許されてもいいような省略系じゃないのか?
277:デフォルトの名無しさん
08/07/20 15:45:09
よくない
278:デフォルトの名無しさん
08/07/20 15:45:43
はじめて聞いた
俺は気付いたけど
279:デフォルトの名無しさん
08/07/20 16:19:19
すまん。セキュリティ板なんかではよく見かける略称だったもんで。
280:デフォルトの名無しさん
08/07/21 23:35:58
C++のboostみたいなC#の定番ライブラリってないですかね
281:デフォルトの名無しさん
08/07/21 23:46:18
標準で機能かなりそろってるからなぁ。
patterns & practices とか EntLib とか、MS が提供してる標準外コードも多いし。
282:デフォルトの名無しさん
08/07/22 14:23:54
entlibなんかきらいだ
283:デフォルトの名無しさん
08/07/22 18:08:55
最近C#に乗り換えたんだが
初心者はSDKから入ったほうがいいよな?
284:デフォルトの名無しさん
08/07/22 18:15:47
日本語でおk
285:デフォルトの名無しさん
08/07/22 19:24:45
>>283
初心者はIDEから入るべき
自分でことを難しくすることはない
286:デフォルトの名無しさん
08/07/22 21:43:08
VC# Express Edition 1択。
287:デフォルトの名無しさん
08/07/22 22:14:16
ム自体初心者なら SDK というかそのレベルのことからはじめるのは
ありだと思うが C# の言語的な思想ってのは IDE が存在する世界だ
から IDE で触れないとなんつーか色々わかりゃしない。結果遠回り
288:デフォルトの名無しさん
08/07/22 22:17:11
別にそんなこと無い
289:デフォルトの名無しさん
08/07/22 22:38:55
別にそんなこと無い
インテリセンスとGUI作成以外は、
SDKから構築した自作コンパイル環境の方が早かったりする
でも初心者はVC#EE使うべきだよ
楽だもん
290:デフォルトの名無しさん
08/07/22 22:39:49
初心者はCASLからだろJK
291:デフォルトの名無しさん
08/07/22 23:22:09
>>289
コーディングの速さなんか問題にしていないしそれぐらい慣れたら
できる人間(他から移行中とか)で C# 初心者の場合に言ってる
IDE からみないと C#(.NET) 的なコンポーネントとかメタデータやらで
宣言的にとかそういう発想が分かりにくいよという話
292:デフォルトの名無しさん
08/07/22 23:32:43
> IDE からみないと C#(.NET) 的なコンポーネントとかメタデータやらで
> 宣言的にとかそういう発想が分かりにくいよという話
もっと具体的に言ってくれないとわかんない
293:デフォルトの名無しさん
08/07/22 23:40:15
IntelliSense は楽をさせてくれると同時に、
初心者にとっては学習ツールでもあると思う。
294:デフォルトの名無しさん
08/07/23 00:41:02
通ぶってるのか何か知らないけど、今時SDKだの素のエディタ使うだのって
そういう背伸びは中学生までにしとけって言いたくなるよな。
傍から見てても恥ずかしくなるよ。
295:デフォルトの名無しさん
08/07/23 00:45:17
SDK→IDE ・・・ 時代に取り残されたおっさんの発想
296:デフォルトの名無しさん
08/07/23 00:45:55
C#でIDE使わないならJAVAでいいじゃん
297:デフォルトの名無しさん
08/07/23 01:06:37
俺はVSのエディタとVIMを併用してるが、
2003→2008にしたら比重が1:9→8:2くらいになったな
LINQ、ラムダ式、拡張メソッドを使うときとか、
コンパイラ並みの構文解析してくれないエディタだと面倒くさい
298:デフォルトの名無しさん
08/07/23 01:18:22
>>294
ム板だし、人に強要しなきゃいいんじゃね?
マなら仕事できない奴確定だがな
299:デフォルトの名無しさん
08/07/23 01:25:47
VC#使うのは当然としてもコンソールアプリから始めてみるのはいいんじゃないの
基本的なところの勉強で小さいコード動かすために
わざわざVBみたいにボタン一つだけ載せたフォーム作るのは格好悪すぎ
300:デフォルトの名無しさん
08/07/23 01:31:42
誰もコンソールアプリから始める事には反対してないような…
301:デフォルトの名無しさん
08/07/23 01:33:55
>>291
302:デフォルトの名無しさん
08/07/23 01:43:38
俺も反対してないけど始めるのはGUIからでもCUIからでもいいと思うよ
303:デフォルトの名無しさん
08/07/23 02:38:56
夏か!
304:デフォルトの名無しさん
08/07/23 02:47:40
どうでもいいけど、cscやmsbuildは.NET Frameworkに付属しててSDKなしでも
たいていのコンパイルはできる。
305:デフォルトの名無しさん
08/07/23 04:22:22
DLLからクラスやメソッドを詳細検索してくれるようなツールない?
protected で A から始まるメソッドをクラス 'Tool' から全部表示する みたいな
306:デフォルトの名無しさん
08/07/23 04:59:02
Reflectorでも使うか、リフレクション使って自作したら?
307:デフォルトの名無しさん
08/07/23 05:26:40
Assembly.LoadFrom("Hoge.dll").GetType("Hoge.Tool").GetMethods()
.Where(m => (!m.IsPublic && !m.IsPrivate && m.Name[0] == 'A'))
.ToList().ForEach(Console.WriteLine);
とか
308:デフォルトの名無しさん
08/07/23 06:23:03
'A'))
やっぱり顔文字に見えるな
309:デフォルトの名無しさん
08/07/23 06:24:08
>>306
Reflectorは修飾子まで考慮してくれないんだよなぁ
自作してみるわ
>>307
3.5ってそんなキモイことできるんかwwすげーなwSTLみたいだw
310:デフォルトの名無しさん
08/07/23 06:57:53
>>308
ワロスw
311:デフォルトの名無しさん
08/07/23 10:56:44
繋げて書けるのはいいけどぬるぽが怖い
312:デフォルトの名無しさん
08/07/23 13:33:57
ブレークポイント置いてデバッグする時は複数行に分けるよね
313:デフォルトの名無しさん
08/07/23 18:36:29
ToList().ForEach()はムダだろ
IEnumerableに対するForEach拡張メソッドを自分で書くか素直にforeach使うべき
314:デフォルトの名無しさん
08/07/23 18:58:33
米国時間22日、マイクロソフトは「Xbox LIVE Community Games」を北米で今年後半から
開始すると発表した。その他の地域については2009年から逐次開始する予定。
Xbox LIVE Community Gamesは、XNA Game Studioで開発されたXbox360用ソフトを
Xbox Liveを通じ一般利用者へ販売することを可能とするサービス。
Xbox LIVE Community Gamesでの販売は、XNA開発者コミュニティ「XNA Creators Club」の
有料会員(年額9,800円)であれば誰でも行うことが可能となる。
販売価格については200~800マイクロソフトポイントの間で自由に設定することができ、
手数料として売上の30%が引かれることとなる。
XNA Game Studioは、マイクロソフトが無償で公開しているVisual Studioをベースとした
ゲーム特化型の統合開発環境。.NET Framework及びDirectXをベースとしたライブラリ
「XNA Framework」を使用し、基本的には設定ひとつでXbox360及びWindowsへの両対応が
可能となる。
XNAについては、RPGツクールが次期バージョンでの対応を表明しており、日本での
普及にも期待がかかる。また、教育機関による学習教材としての採用も増加しており、
月刊ベーシックマガジンの休刊以降問題視されていた日本人ゲーム開発者の急激な
減少に歯止めをかける期待も持たれている。
URLリンク(news4xbox.blogspot.com)
315:デフォルトの名無しさん
08/07/23 19:00:00
XNAとC#関連のスレみてると何回もこれ読まされるんだが
316:デフォルトの名無しさん
08/07/23 19:01:42
そういう気分の時は「コピペ君て馬鹿だな、まで読んだ」と書くんだ
317:デフォルトの名無しさん
08/07/23 19:41:15
「コピペ君て馬鹿だな、まで読んだ」
ってことはさ、そのコピペの中に「コピペ君て馬鹿だな」って文言が含まれているって事だよね?
だとしたらそこそこまともな事言ってるって事になっちゃうよ。
318:デフォルトの名無しさん
08/07/23 20:02:51
>>315
巡回してるとこ見てきたら、6箇所で貼ってあった・・
コピペ君て馬鹿だな
319:デフォルトの名無しさん
08/07/23 21:38:55
どうせ数独とかマインスイーパーみたいなのが氾濫して
おわるんじゃねーの
320:デフォルトの名無しさん
08/07/23 22:58:03
ボンバーマンの超ぱちもんなら既にある
321:デフォルトの名無しさん
08/07/23 23:09:13
1時間もあれば作れるようなくそげーが氾濫することは目に見えてるけど
URLリンク(www.nicovideo.jp) を見る限り期待できるかも
X 期待できるかも
O 期待したい
322:デフォルトの名無しさん
08/07/24 01:05:08
文章の最後に「コピペ君て馬鹿だな」って書いておくと、
「コピペ君て馬鹿だな、まで読んだ」ってレスされても
即座に「最後まで読んだんかい!!」ってレスできる。
これ豆知識な。
コピペ君て馬鹿だな
323:デフォルトの名無しさん
08/07/24 01:16:40
僕は馬鹿なコピペ君です、まで読んだ。
324:デフォルトの名無しさん
08/07/24 01:20:46
>>323
なんということでしょう・・・orz
325:デフォルトの名無しさん
08/07/24 15:35:07
swichとforとifの組み合わせって速度にどれくらい差があるんでしょうか?
326:デフォルトの名無しさん
08/07/24 15:36:56
調べてみたら?
327:デフォルトの名無しさん
08/07/24 15:54:20
switch と if に for が絡むのがわからん
328:デフォルトの名無しさん
08/07/24 16:06:37
複数のコンポーネントがある時に、
label[i]みたいにインデクサを使いたいんですが、
コンパイラにlabelなんてねーよバーヤヽ(`Д´)ノ
って言われてしまいます。
やっぱり一行づつ書いていくしかないのですか?
329:デフォルトの名無しさん
08/07/24 16:08:15
もうちょっと具体例を
330:デフォルトの名無しさん
08/07/24 16:10:37
>>328
自分でコレクションに入れろよ。
331:デフォルトの名無しさん
08/07/24 16:31:29
>>329-330
しょうがないからLabel配列型の変数にいれてやりました。
コンパイラが面倒みてくれたらいいのに・・・
332:デフォルトの名無しさん
08/07/24 16:40:28
そんなキモいことされてたまるか
333:デフォルトの名無しさん
08/07/24 16:56:37
どう考えてもコンパイラじゃなくて、せいぜいライブラリのありがた迷惑だろ。
334:デフォルトの名無しさん
08/07/24 17:27:25
MenuItems.Addでメニュー項目を追加するときにイベントハンドラを指定しますが、
項目の数だけメソッドを用意するのが個人的に好きじゃありません。
各項目に共通のイベントハンドラを指定し、
その中でどの項目が選択されたのかを確認したいのですが、
このようなことは可能でしょうか。
335:デフォルトの名無しさん
08/07/24 17:28:10
sender
336:デフォルトの名無しさん
08/07/24 17:33:09
public void menuItem_Click(object sender, EventArgs e)
{
if (object.ReferenceEquals(sender, menuItem1))
{ ... }
else if (object.ReferenceEquals(sender, menuItem2))
{ ... }
}
337:デフォルトの名無しさん
08/07/24 17:50:18
>>335
>>336
サンクス!
338:デフォルトの名無しさん
08/07/24 18:04:23
Tag使えよ
339:デフォルトの名無しさん
08/07/24 18:10:25
うむ
340:デフォルトの名無しさん
08/07/25 01:38:05
プログラミングの初心者で恐縮ですが、質問です。
オセロゲームを練習として作ってみたいと考えています。
そこで、Panelを継承したクラスを作ってOseroPanelという名前にしました。
このOseroPanelを
this.Controls.Add(p);
とフォームに貼り付けました。
次にパネル側の描画処理を書きました。
一つはOnPaintをオーバーライドして描画しました。
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
e.Graphics.DrawLine(new Pen(Color.Red), 10, 100, 200, 100);
}
こちらはうまく動いています。
341:デフォルトの名無しさん
08/07/25 01:39:03
もう一つはイベントを使ってみたのですが、問題が発生しました。
VSを使って、イベントを自動作成し、
private void InitializeComponent()
{
this.SuspendLayout();
//
// OseroPanel
//
this.Paint += new System.Windows.Forms.PaintEventHandler(this.OseroPanel_Paint);
this.ResumeLayout(false);
}
private void OseroPanel_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawLine(new Pen(Color.Blue), 100, 10, 100, 200);
}
というコードを書きました。
どうやら
OseroPanel_Paint()メソッドが呼ばれていないようです。
原因がわかる人がいましたら教えてもらえるとありがたいです。
342:デフォルトの名無しさん
08/07/25 01:51:20
this.Paint += new System.Windows.Forms.PaintEventHandler(this.OseroPanel_Paint);
↓
this.OseroPanel.Paint += new System.Windows.Forms.PaintEventHandler(this.OseroPanel_Paint);
343:デフォルトの名無しさん
08/07/25 09:40:22
>>342
OseroPanelクラスのなかでやっているので
thisはOseroPanelを指しています。
344:デフォルトの名無しさん
08/07/25 11:09:12
×Osero
○Othello
345:デフォルトの名無しさん
08/07/25 11:18:37
取りあえずその記述だけでは原因不明なので
まずデバッガでInitializeComponent通ってるかどうかから確認
346:デフォルトの名無しさん
08/07/25 14:13:04
オセロは(TM)だから注意ね
347:デフォルトの名無しさん
08/07/25 14:16:22
TMならセーフじゃん
348:デフォルトの名無しさん
08/07/25 14:43:35
暑さでボケてたw
(R) だよ
349:デフォルトの名無しさん
08/07/25 15:43:20
>>345
orz
まさにそれでした。
InitializeComponent()の呼び出しは自分で書かないといけないんですね。
Oseroクラスのコンストラクタに書いてみたところ、
すべてうまくいきました。
どうもありでしたm(_ _)m
350:デフォルトの名無しさん
08/07/25 16:30:44
フォームアプリのForm1とかのように使い捨てのクラスはともかく、
継承クラスではイベントハンドラではなくOn~メソッドのオーバーライドが推奨のはず
探したけどソースが見つからんorz
>>346-348
オセロ(玩具)とソフトウェアじゃあ区分が違うんじゃないか?
351:デフォルトの名無しさん
08/07/25 17:48:32
>>350
たしかにOnPaintをオーバーライドした方が、
コードがすっきりしますね。
352:デフォルトの名無しさん
08/07/25 17:57:31
>>340-351
ふらっと行け
353:デフォルトの名無しさん
08/07/25 18:42:36
一様乱数を生成する関数のソースについて質問があります。y=1/sqrt(2)*exp(-1/2*x*x)の計算で
In function `GaussRandom':: undefined reference to 'sqrt’と In function `GaussRandom':
: undefined reference to `exp'
というエラーがでて実行できません。もちろん<math.h>は定義しました。
レポート課題なのでマジで困ってます。是非教えてください。ソースを下に載せておきます。
ちなみにxが一様乱数で、yが正規乱数です。
double GaussRandom()
{
double x;
double y;
x=UniformRandom();
y=1/sqrt(2)*exp(-1/2*x*x);
return y;
}
double UniformRandom()
{
double x;
int r=1;
r=1229*r+351750;
x=r/1664501;
return x;
}
354:デフォルトの名無しさん
08/07/25 18:44:02
>>353
スレタイをよめ
355:デフォルトの名無しさん
08/07/25 18:57:48
>>353
>In function `GaussRandom':: undefined reference to 'sqrt’と In function `GaussRandom':
>: undefined reference to `exp'
翻訳するとだな
「型または名前空間名 'sqrt' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。
型または名前空間名 'exp' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。」
だな。何に翻訳したかは秘密だ。
さらに言うとusing System.Math;が足りないなw
356:デフォルトの名無しさん
08/07/25 18:59:27
>>354 すいません。
357:デフォルトの名無しさん
08/07/25 19:09:17
>>353
マルチすんなゴミ
358:デフォルトの名無しさん
08/07/25 19:12:00
ReflectorでSystem.Randomクラスのコードをパクる奴とかいそうだな
359:デフォルトの名無しさん
08/07/25 19:23:59
>>355 ありがとうございます。
>>357 期限が迫ってたので色んな場所で聞こうと思っただけです。気を悪くしてすいません。
360:デフォルトの名無しさん
08/07/25 19:32:50
ほんとにKYですね^^
死んでください
361:デフォルトの名無しさん
08/07/25 19:35:51
気を悪くしてすいませんだと?
気を悪くしたのはこっちだ!クソが!
362:デフォルトの名無しさん
08/07/25 20:43:39
期限が迫ってたので色んな場所で聞こうと思っただけです
363:デフォルトの名無しさん
08/07/25 20:47:26
こういうゴミに教えてあげるような偽善者も死ねよ
364:デフォルトの名無しさん
08/07/25 21:43:47
自己中乙
365:デフォルトの名無しさん
08/07/25 22:26:13
レポートの最後に「参考:2ch プログラム板」って書いておけよ
366:デフォルトの名無しさん
08/07/25 22:36:26
>>361 気を悪くさせての間違いです^^
>>365 課題落とされるかもしれないので書けません 教えてくれた人ありがとうございました^^
367:デフォルトの名無しさん
08/07/25 22:36:57
今プログラミングスレがいっぱい上がってるがどゆこと?
368:デフォルトの名無しさん
08/07/25 22:45:14
>>367
なに言ってんだお前
369:デフォルトの名無しさん
08/07/25 22:46:18
しまった板違いwwwAA板じゃねえwwwww
370:デフォルトの名無しさん
08/07/25 23:00:15
>>369
斬新な板違いだなおい
しかもよりによってスレタイに[プログラム板]って付いてるこのスレで
371:デフォルトの名無しさん
08/07/26 01:30:27
なんでこんな荒れてんの?
372:デフォルトの名無しさん
08/07/26 01:35:00
荒れてないよ
373:デフォルトの名無しさん
08/07/26 12:06:15
突然すみません。
C/C++のように構造体配列の定数データを持ちたいんですが、
C#ではどうすればよいのでしょう?
374:デフォルトの名無しさん
08/07/26 12:21:19
無理
375:デフォルトの名無しさん
08/07/26 12:23:06
static readonlyな配列で良いんじゃね
376:デフォルトの名無しさん
08/07/26 12:30:22
static readonly な ReadOnlyCollection<T>
377:デフォルトの名無しさん
08/07/26 17:04:31
GDI+でICONへは変換不可ですか?
378:デフォルトの名無しさん
08/07/26 17:27:39
>>377
可能
Dim bmp As New Bitmap("hoge.bmp")
Dim ico As Icon = Icon.FromHandle(Bitmap.GetHicon())
Dim fs As New FileStream("hoge.ico", FileMode.Create)
ico.save(fs)
fs.Close()
ico.Dispose()
bmp.Dispose()
379:デフォルトの名無しさん
08/07/26 17:40:09
ども、やってみます!
380:デフォルトの名無しさん
08/07/26 18:15:04
ただし制限きついけどなー
381:デフォルトの名無しさん
08/07/26 19:11:37
>>378
意味不明な質問には「日本語で書け」と叱責してやるのが本人のためだと思うけど。
ああちゃんと嫌味の意味でVBで答えてるわけかw
382:デフォルトの名無しさん
08/07/26 19:33:38
>>381
そういうことwww
お前は、エスパーかw
383:デフォルトの名無しさん
08/07/26 22:03:26
Using使えよって思った。
384:デフォルトの名無しさん
08/07/26 22:04:52
キモすぎ
385:デフォルトの名無しさん
08/07/26 22:12:36
>>381
意味不明な質問には「日本語でおk」だろ?
386:デフォルトの名無しさん
08/07/26 22:15:29
意味不明な質問にわざわざ絡む奴ってなんなの?
いじめられっこ?
387:デフォルトの名無しさん
08/07/26 22:19:19
>>382
自作自演乙
388:デフォルトの名無しさん
08/07/27 04:59:50
>>381
二行目で気づいたならその時点で書き直せよ気持ち悪い
389:デフォルトの名無しさん
08/07/27 15:52:58
GraphicsクラスのDrawImageメソッドで
画像の表示位置や高さ幅は通常intで指定すると思います。
ところが、実はfloatで指定する方法も用意されています。
public void DrawImage(
Image image,
float x,
float y,
float width,
float height
)
floatで指定すると何かよいことがあるのでしょうか?
基本的には四捨五入でintに繰り上げていると思うのですが、
そのような理解で正しいでしょうか?
390:デフォルトの名無しさん
08/07/27 16:07:44
>>389
WMFとかベクター画用じゃね?
391:デフォルトの名無しさん
08/07/27 16:10:09
Graphicsの描画単位はPixelだけじゃないぜ?
392:デフォルトの名無しさん
08/07/27 16:14:24
DirectXで使うためでしょ
393:デフォルトの名無しさん
08/07/27 16:15:14
ピクセル単位が整数だとしても
縮小拡大の原点が0,0で固定されないで
指定点から始まると困ることが多数あるのです。
394:デフォルトの名無しさん
08/07/27 16:47:49
いやそういうことじゃないでしょw
>>391が言ってることが全てだよ。
よく言われることだが、そもそもピクセルなんていうのは
デバイス側の勝手な都合に過ぎん。
395:デフォルトの名無しさん
08/07/27 17:48:10
VB6時代にもTwipsとかあったな。
GraphicsUnit列挙体がGDI+で扱える単位すべてじゃね?
396:デフォルトの名無しさん
08/07/27 18:50:20
画像表示するアプリ作ったときWin32APIのStretchBlt使ってたら
スクロールの更新部分だけ描画させるたら非更新部分と結果がずれて困ったことあったな。
無効領域だけしか処理しないから全体を更新すればいいんだけど
大きい比率で拡大したときに表示してくれないから結局自前で処理するしかなかった。
GDI+が出たときに少数単位で渡したらずれなかった。
397:デフォルトの名無しさん
08/07/27 19:01:47
画像を反転させるには
RotateFlip(RotateFlipType.Rotate180FlipXY);
というメソッドを使えばいいことがわかりました。
画像Aと反転後の画像Bを作りたいのですが、
Cloneメソッドを使うと両方反転してしまいます。
Imageオブジェクトをコピーする良い方法はありますか?
398:デフォルトの名無しさん
08/07/27 19:09:50
RotateFlipしたあとにCloneしてるってオチじゃないだろうな
399:デフォルトの名無しさん
08/07/27 22:51:02
ものすごくヘビーな処理をしています
計算途中でスリープやサスペンドに入られるとちょっと困るので、計算中は一時防止したいのですが
何か良い方法はないでしょうか?
400:デフォルトの名無しさん
08/07/27 22:56:56
何か処理してれば普通サスペンドしないだろ
401:デフォルトの名無しさん
08/07/27 23:01:32
いや、寝る前に仕掛けて朝起きたらサスペンドしていてちっとも処理が進んでなかったです。
402:デフォルトの名無しさん
08/07/27 23:18:35
>>399
処理と重力定数は関係ない・・・
403:デフォルトの名無しさん
08/07/27 23:21:21
電源の設定でサスペンドしないように出来ない?
404:デフォルトの名無しさん
08/07/27 23:44:05
>>399
WM_POWERBROADCASTのPBT_APMQUERYSUSPENDの応答でサスペンド入りを拒否できるらしい。
405:397
08/07/28 02:27:50
>>398
違うようです。
シャローコピーのようで、
Imageクラスの中ではイメージ実態への参照(ポインタ)
を持っているようです。
一方、回転するのはイメージ自体です。
406:397
08/07/28 02:48:15
大ボケかましました。
RotateFlip(RotateFlipType.Rotate180FlipXY);
だと画像が回転せず
正しくは
RotateFlip(RotateFlipType.Rotate180FlipNone);
でした。
頭悪すぎてすみません。
暑さでやられましたorz
407:デフォルトの名無しさん
08/07/28 11:10:24
rubyにおけるmechanize的なクラスとか無いんですか?
408:デフォルトの名無しさん
08/07/28 11:40:56
よほど自明でない限りrubyのmechanizeを説明するのが先だろ
409:デフォルトの名無しさん
08/07/28 12:05:25
C#にはスクレイピング用の定番ライブラリはないんじゃないかな。
410:デフォルトの名無しさん
08/07/28 12:15:43
逆行列、最小二乗法のフリーのライブラリないでしょうか?
411:デフォルトの名無しさん
08/07/28 12:31:34
ライブラリっつーか、ソース探してきては
412:デフォルトの名無しさん
08/07/28 19:17:38
CLapackなんかの必要な関数だけC++/CLIでラップして使うのが楽
413:デフォルトの名無しさん
08/07/28 19:41:02
string に格納されたデータが整数に変換可能な形なら int に
浮動小数点形式なら float に変換する方法教えてください。
414:デフォルトの名無しさん
08/07/28 19:44:33
TryParse
415:デフォルトの名無しさん
08/07/28 19:44:49
TryParse
416:デフォルトの名無しさん
08/07/28 20:24:51
プロパティというのは、クラスのフィールドを外部に公開する時に、柔軟性や冗長性を持たせるために、
必要ならば何らかのラップ処理を行うためのものだと、今まで思っていました。
つまり、プロパティは必ずpublicなものしか存在しないのかと。
ところが、最近、外人さんのソースを読んでいると、すべてのフィールドに対してプロパティを用意して、
クラス内部のアクセスに対しても、privateのプロパティを経由して行っているプロジェクトが多いです。
個人的には、フィールドは小文字で、publicなプロパティは大文字の命名規則(Pascal)だったのですが、
外人さんの流れでは、privateなプロパティもPascal記法になっていて、
クラス内部のすべての操作が大文字から始まるメンバを操作しています。
皆さんはどうされてます?もしかして、外人さん流儀の方が主流なんでしょうか?
C#以外の言語も含めて、そっちの方が主流になるんでしょうかねぇ。
個人的には、ローカルなnullチェックなどはプロパティの中ではなく、メソッドの中で操作する前に
行うほうが行儀が良いんじゃないかと思ったりもするのですが‥‥。
417:デフォルトの名無しさん
08/07/28 20:42:03
>>416
質問の意図がクリアーじゃない気がするよ。
も一度他人の目線で自分の文章読みなおしてみ?
418:デフォルトの名無しさん
08/07/28 20:53:45
>>417
単に話題提起してるだけなので、こんなもんじゃないでしょうか。解析的に解ける問題でも無いし。
興味を持たない人には、一生縁のない内容でもあると言えるし。
おそらく、LL言語的にはプロパティはあって当然の記述なので、おそらく外人さんが正しいのでしょうが。
419:デフォルトの名無しさん
08/07/28 21:36:43
サンプル見ると、MS 自身も private なプロパティ使ってるね。
クラス内部であっても、プロパティの実装変えたときのこと想定しとけよってことだと思う。
420:デフォルトの名無しさん
08/07/28 21:41:28
>>418
だから何を問題提起してるのか読み取れない、と言ってるんだよ。
質問内容にケチをつけているのではない。
ナニが言いたいのか分からないといってるの。
421:デフォルトの名無しさん
08/07/28 21:44:35
>>416
Delphi(Win32,.netじゃないやつ)のVCLをみると
private/protectedのレベルではpropertyは使われてない。
(protectedまで使ってるものもあるがTCustom~と直接使わないクラス。ここから継承してほかのコンポネを作る)
でも内部ではプロパティを使ってアクセスしてる。(Get/SetとCreateをのぞく)
422:デフォルトの名無しさん
08/07/28 21:47:38
外人さんの手法はクラスが大きくなると有効じゃね
423:デフォルトの名無しさん
08/07/28 21:52:49
>>420 読解能力がないか、話に興味が持てないならスルーすればいいんじゃね?
話からずれるが
C#じゃ配列のプロパティはインデクサとして1つしか使えないと思ってたけど
配列型をプロパティの型にしてしまえば一応いくらでも使えるのだな。今初めて気がついた
public Boolean[] Hoge { get;set;}
でも、配列としてデータを持ってるんでなくてその場で計算して値を出したり入れたりしてたり、
内部では別の型のデータとして扱ってて、便利のためにほかの型でのアクセスさせるためにほかの配列使ったりってことはどうやったらいいの?
int[,] でかると = int[100,100];
public int 極座標[int R,double Rad] { (ry とか
しかもこういうのがほかの変数にも必要だったりする場合にはどうやって対処すればいいの?
424:デフォルトの名無しさん
08/07/28 21:57:52
メソッドを使いなさい
425:デフォルトの名無しさん
08/07/28 22:00:32
>>423
妄想力と読解力は違うよ。
ま、区別がつかない人間に縷々説明して分かることとは思わないけど。
426:デフォルトの名無しさん
08/07/28 22:06:20
>>423
VBからだと引数付きのプロパティは作れるのだけどこれをC#から使う場合がヒントになるかな。
Public Property NameProp(ByVal index As Integer) As String
Get
Return array(index)
End Get
Set (ByVal Value As String)
array(index) = Value
End Set
// C#から使う
o.set_NameProp(1, "nnnnn");
o.get_NameProp(1);
変なのが沸いてるけど無視していこう。
427:デフォルトの名無しさん
08/07/28 22:20:48
そこまでして[]を使いたい意味がわからん
428:デフォルトの名無しさん
08/07/28 22:21:12
だから言わんこっちゃない。
説明能力がない奴がろくに推敲もせずに書いた文章を
エスパーしてやることが親切だと勘違いしている馬鹿が多くて困るが、
意味不明な文章(例えば>>423)にははっきり「意味不明だ」と言ってやるのが
結局は一番親切な事だとなぜ分からないのだろう。
429:デフォルトの名無しさん
08/07/28 22:35:17
インデクサほとんど使わないんだよなぁ
430:デフォルトの名無しさん
08/07/28 22:54:54
だから423はスルーしたのか
431:デフォルトの名無しさん
08/07/28 22:56:45
>>423
配列を返すプロパティは実装変えられなくなるからダメ
432:デフォルトの名無しさん
08/07/28 22:59:12
インデクサと GetEnumerator を持つコレクションクラスを返すプロパティを作るの推奨。
433:デフォルトの名無しさん
08/07/28 23:00:51
晒しage
434:デフォルトの名無しさん
08/07/28 23:04:13
配列使うってまだ.netに慣れてない人に多い気がする。
435:423==421 (IDが出ない板は面倒くさい)
08/07/28 23:16:40
>>431
確かにそうだけど
ListBoxはObjectCollection返してるけど、こうするとどう変わってくるの?
暇なときに調べるか…
436:デフォルトの名無しさん
08/07/28 23:18:19
ここっていつも空気悪いよね
437:デフォルトの名無しさん
08/07/28 23:23:41
そりゃいつも低脳がでしゃばるからな
438:デフォルトの名無しさん
08/07/28 23:30:24
>>435
挙動変えたいときに、ObjectCollection継承したクラス作って
インデクサとかGetEnumeratorをoverrideしてしまえば
利用側に迷惑かけずに挙動変えれるでしょ。
439:デフォルトの名無しさん
08/07/28 23:32:48
IList<>かICollection<>でいいだろ。
440:デフォルトの名無しさん
08/07/28 23:43:33
IEnumerator<>という手も
441:デフォルトの名無しさん
08/07/29 00:02:38
>>439-440
多分、今作るならそういう実装になってると思う。
442:デフォルトの名無しさん
08/07/29 00:29:07
>>441
ちゃんと理解できてない&元使用言語によっては配列使いまくりになるよ。
VB厨が使うVB.netなんていい例
443:デフォルトの名無しさん
08/07/29 00:43:42
ちゃんと理解できてない?
それはたぶんお前さんのことでもあるんじゃないの?
別に配列を返すプロパティやメソッドが一義的に悪いとも思えないけどね。
もちろん配列を返した場合の弊害を知らないのは愚かだと思うが、
村の掟でもあるまいし、無条件に否定するのも同様に愚かだろう。
444:デフォルトの名無しさん
08/07/29 00:53:05
配列を返すプロパティがガイドライン違反であることには留意すべきじゃないか
445:デフォルトの名無しさん
08/07/29 02:42:46
>>443
まぁ、探してみてみろよ、わかるから。
お前の想定レベルみたいな生半可なもんじゃねーぞ、VB厨は・・・
そのうち.netの仕事が増えれば嫌でも見る事になると思うよ。
446:デフォルトの名無しさん
08/07/29 07:06:09
もし配列を返すことが目的ならばindexerを使うのはおかしい。
逆にindexer代わりに配列を使うのも変だな。
配列だけでなく変更可能なクラスをプロパティにするならある種の副作用は覚悟しなければならない。
getで予防的コピー、setで妥当性の検査や値のコピーといった措置は必要になるだろう。
447:デフォルトの名無しさん
08/07/29 07:42:27
メンバのコレクションの中身だけを渡したいときは配列使うようにしてるかも。
実測してないが早いと聞いたので。
448:デフォルトの名無しさん
08/07/29 08:29:40
速くはあるだろうが安全じゃない。ケースによってはここまでやらないと。
int [] _hoge = new int [5];
int [] Hoge {
get { return (int []) _hoge.Clone(); }
set {
if (value == null) throw new NullReferenceException();
if (value.Length > _hoge.Length) throw new ArgumentOutOfRangeException();
value.CopyTo(_hoge, 0);
}
}
449:デフォルトの名無しさん
08/07/29 09:01:18
>>428
君のプロパティに関する意見はどうなの?
他の人がここまで書いているんだから、何か無いの?
無いのなら、無い奴に限って枝葉末節にこだわる黄金則が‥‥。
450:デフォルトの名無しさん
08/07/29 09:45:33
>>448
getで返す配列への変更が元のインスタンスに反映されないので、
プロパティじゃなくてメソッドにすべき
451:デフォルトの名無しさん
08/07/29 11:05:59
ケースごとに分けて考えようぜ。
配列の参照自身が書き換わってよい場合。また内容も外部から任意に書き換えることが出来る。
フィールドをpublicにする。
単純に配列の参照そのもをプロパティにする。
配列内容が任意のタイミングで書き換わってよい場合。ただし配列の参照自体やサイズが変わることは禁止。
配列の参照をgetだけするプロパティまたは取得だけの関数を使用する。 >>449はこれ
配列の内容が書き換わるタイミングを管理したい場合。配列の参照やサイズが変わることは禁止。
インデックサかそれに準じる添え字を引数にした読み書き用の関数を使用する。
get setのプロパティで予防的コピーを行う。 >>448はこれ
452:デフォルトの名無しさん
08/07/29 11:06:58
>>451
>>>449はこれ
は
>>450の間違い、訂正します。
453:デフォルトの名無しさん
08/07/29 12:27:22
今北産業
454:デフォルトの名無しさん
08/07/29 12:28:20
インデクサ使ったほうがかっこよくね
vs
ハァ?メソッドでいいだろ
455:デフォルトの名無しさん
08/07/29 12:39:08
x.Foo[128] = 123; // 配列プロパティでインデックサみたいなことができるよ~
int [] f = x.Foo; f[3] = 123; // こんなことや
x.Foo = null; // あんなことされて平気? ・・・産業
456:デフォルトの名無しさん
08/07/29 12:47:21
>>455
や、それが平気じゃないならgetのみにするんではないか?
457:デフォルトの名無しさん
08/07/29 12:58:00
配列じゃないがこういうケース、書き換わらないと思ったら値型かよ!
hoge.Point.X = 100;
正解はこちら、めんどくせ~
hoge.Point = new Point(100, hoge.Point.Y);
>>456
3番目のケースはそれでカバーできるが、2番目のは割り切りが必要かな。
458:450
08/07/29 13:04:39
>>451
まず、誤解の無いように言っておくと、
>>451の各ケースの意義は理解してるし、それについてどうこう言うつもりはない
で、>>450で言いたかったのは、例えば
obj.Hoge[2] = 10;
と書けるにもかかわらず、この操作が(直感に反して)意味を成さないのが問題だということ
プロパティの型が値型でなければ、そのプロパティで取得したインスタンスへの変更は
元のオブジェクトに何らかのフィードバックがあることが期待され、それを裏切る実装は避けるべき
ついでに、コピーを返すプロパティと配列を返すプロパティがガイドラインで禁止されているのも
それなりの理由があるからなので、それに違反する必然性がないのであれば従っておくべき
459:デフォルトの名無しさん
08/07/29 13:09:07
Image.Paletteを考えればコピーを返すプロパティはやっぱ直感的じゃないよな
460:デフォルトの名無しさん
08/07/29 14:43:39
インデクサだって・・・ダサッ
461:デフォルトの名無しさん
08/07/29 16:19:22
IComparerを継承したクラスでComparerメソッドの実装を
しようとしてるんだけど、浮動小数点数の比較が上手くいかない
誰かスマートな実装方法教えてください
462:デフォルトの名無しさん
08/07/29 16:20:51
上手くいかないならどう上手くいかないのか書けよ
463:デフォルトの名無しさん
08/07/29 16:37:10
スマートも糞もないだろそれぐらい
あとIComparer<T>使わんの?
464:デフォルトの名無しさん
08/07/29 16:44:56
あまりに低レベルな質問する奴はふらっと行けよ
465:デフォルトの名無しさん
08/07/29 17:04:44
>>462
int ret;
float x;
float y;
ret = (int)(x-y)
みたいにやってるけど、差が0.・・・だと、丸まってしまって
0になってしまうから、駄目だと思うんだが、どうやったら
上手く比較できるのかさっぱりわからない
整数ならこれで上手くいくんだが
>>463
IComparer<T>は知らなかったので、今から調べてみます
それくらいって程簡単なの?
とりあえず簡単なら教えて欲しい、これでずっと悩んでる
ウェブでいくら探しても、整数と文字列の比較のサンプルしか無いんだ
466:デフォルトの名無しさん
08/07/29 17:07:15
>>465
x==y/x<y/otherwise
でいいだろ。
467:デフォルトの名無しさん
08/07/29 17:07:53
ふらっとだな。
if (x > y) return 1; とか思いつかない?
468:oth
08/07/29 17:27:22
otherWiseがコンパイル通りません
469:デフォルトの名無しさん
08/07/29 17:31:43
>>466
すいませんが、まるでその式の意味が理解できないんですが
どのように理解したら良いんですか?
>>467
int にキャストしないで
if (ret >0)
return 1;
のようなものは考えていたけれど、もっとスマートな処理が
あるんじゃないかと思って聞いてみたのです
Comparerの戻り値の正数ってのは、0か負の数じゃなきゃ
なんでもいいんですかね?差の値を入れなくても