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

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。

他のスレッドでは書き込めないような低レベルな質問。
質問者自身なんだか意味がよく分からない質問。
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。

内容に応じて、他スレ・他板へ行くことを勧められることがあります、ご了承下さい。

なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

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

■前スレ
ふらっとVisual C#,C♯,C#(初心者用) Part106
http://toro.2ch.net/test/read.cgi/tech/1378514566/

■関連スレ
C#, C♯, C#相談室 Part80
http://toro.2ch.net/test/read.cgi/tech/1373037260/

■コード貼るなら↓使ってください
http://ideone.com/
2デフォルトの名無しさん:2013/09/25(水) 20:22:41.03
なんかideone使いにくくなってね?
てか、run code無効にできなくね?
3デフォルトの名無しさん:2013/09/25(水) 20:39:37.83
だってcodepad.orgはC#使えないんだもん
4デフォルトの名無しさん:2013/09/25(水) 20:50:50.35
前もbootstrap使ってたっけ
今は使ってるって一目で分かるな
5デフォルトの名無しさん:2013/09/25(水) 20:56:58.18
前はチェックボックスむき出しだったから使ってないんじゃない。
量産型オサレになりましたね。
6デフォルトの名無しさん:2013/09/25(水) 21:01:50.04
コンパイルエラーが出るようになってむしろどこがおかしいのかまで分かるようになったから
ある意味コンパイラを持ってない人には親切かも

ついでに5桁のIDが6桁に増やされたな
7デフォルトの名無しさん:2013/09/26(木) 00:22:11.62
ループでファイル名列挙するプログラム書いてみた。
若干冗長だけど、出力結果は正しいと思う。

ttp://ideone.com/Rzici0
8デフォルトの名無しさん:2013/09/26(木) 01:29:29.69
SingletonのクラスをアプリのSettingデータとしてもってますが、
これを、設定画面でBindingしたいのですか、DataContextに普通にいれても無理でした。
どうやればいいでしょうか?
9デフォルトの名無しさん:2013/09/26(木) 02:56:36.52
>>8
インスタンスを普通にDataContextに入れたら動くので、どこか他が間違っていると思うよ
デザパタで言うシングルトンじゃなくてstatic classをシングルトンと言っているなら.net4.5から対応しました
http://msdn.microsoft.com/ja-jp/library/vstudio/ms171868.aspx
>静的プロパティへのデータ バインド、ICustomTypeProvider インターフェイスを実装するカスタム型へのデータ バインド、およびバインド式からのデータ バインド情報の取得。

あ、勿論プロバティーがstaticでも動きません
10デフォルトの名無しさん:2013/09/26(木) 08:00:47.13
みなさん質問ですがWPFのデータ接続ってなにつかってますか?データセット?エンティティ?それともLINQ? 必死こいてエンティティでのバインド覚えようと思ってるけどどうもうまくいかなくて
11デフォルトの名無しさん:2013/09/26(木) 12:35:28.66
>>7
EnumerateFiles使うなっていってんだろ

980 名前:デフォルトの名無しさん[sage] 投稿日:2013/09/25(水) 12:24:09.75
>Directory.EnumerateFiles
これ中、再帰だろ、ボケ。

995 名前:デフォルトの名無しさん[] 投稿日:2013/09/25(水) 12:49:14.90
>>992
EnumerateFiles で見つかるのは名前だけだろ
そんな単純なもの以外に対応させるためには使えない
EnumerateFiles 使わずに書いてみてよ

FindFirstFile使え
http://ideone.com/opyS8O
12デフォルトの名無しさん:2013/09/26(木) 13:41:24.78
前スレの糞みたいな流れを持ち込むんじゃねーよこの糞が
死ね
13デフォルトの名無しさん:2013/09/26(木) 13:51:47.91
糞スレに誘導したのに、勝手にスレ立てんな、糞ども。
14デフォルトの名無しさん:2013/09/26(木) 18:35:58.41
C#入門のサイトを見ながら作ってみたした
C#はまったくの初心者です
これはどこがだめなのでしょうか?
また、どうすればなおりますでしょうか?
背景に画像をうつして、消すとき確認をとりたいです
http://i.imgur.com/Riy4SAB.png
15デフォルトの名無しさん:2013/09/26(木) 18:53:08.26
同じクラスあり過ぎてコンパイラが怒ってる

public Form1()
{
Bitmap ...
...
...

this.FormClosing += ... ←上のにまとめてここをコピー
 new FormClos...
}

上のForm1の
}から
下の
class Form1 : Form()までの行を消しちゃえ
16デフォルトの名無しさん:2013/09/26(木) 18:56:11.78
書き直すわ
Form1とpublic Form1()が2つずつあるよな? これがいけない
public Form1()の閉じ括弧 } ←これ から
public Form1()の始まり括弧 { までを選択してバックスペースキー使って消したらいけるはず
17デフォルトの名無しさん:2013/09/26(木) 19:06:18.13
エラーはひとつもでなくなりました
ありがとうございます
しかし、実行しても背景も表示されず閉じようとしても確認をとってくれません
何か間違ってたでしょうか?
http://i.imgur.com/sCZkz6C.png
18デフォルトの名無しさん:2013/09/26(木) 19:07:29.32
ClosingイベントやLoadイベントのハンドラーが登録されていない
19デフォルトの名無しさん:2013/09/26(木) 19:51:54.76
色んな所で検索してイベントのハンドラーを調べてみて
色々実行してみたんですが
いまいち解決法が見つかりませんでした・・・
よろしければ、具体的な方法を教えていただけますか?
20デフォルトの名無しさん:2013/09/26(木) 20:33:03.03
根本的にForm1じゃなくてFormのインスタンスnewしてるじゃないか
そりゃそうだよ
21デフォルトの名無しさん:2013/09/26(木) 20:33:48.03
>>18
適当なこと言ってんじゃねーぞコラ?


>>19
Mainメソッドの
>Form form = new Form();

Form1 form = new Form1();
に修正してみそ
22デフォルトの名無しさん:2013/09/26(木) 20:34:21.57
オブジェクトがnullだった時のメソッド呼び出しをエラーにしない方法ないですか
oppai.Momu();
この呼び出しがoppaiがnullの時でも例外を発生せずに単に無視して欲しい。
23デフォルトの名無しさん:2013/09/26(木) 20:36:06.75
エラーにしない方法はないです
24デフォルトの名無しさん:2013/09/26(木) 20:43:16.15
>>19
これでいいのか
http://ideone.com/NTzvdo
25デフォルトの名無しさん:2013/09/26(木) 20:51:21.07
>>22
oppaiを何かのクラスでラップしてnullを返さないようにするとか

class Hoge
{
 public Oppai Oppai
 {
  get
  {
   if( oppai == null )
   {
    oppain = new Ginyu();
   }
   return oppai;
  }
 }
}

class Ginyu : Oppai
{...}
26デフォルトの名無しさん:2013/09/26(木) 21:07:31.58
>>22
null objectパターン
27デフォルトの名無しさん:2013/09/26(木) 21:09:05.98
>>25
if(Oppai != null)
{

}
で囲む以上のコードを書いたら意味ないだろ
288:2013/09/26(木) 21:13:36.61
>>9さんありがとう、Bindingうまくいくようになりました。
原因は、TextBoxに値を表示してたのですが、
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged
の追加で理想なうごきになりました。
2922:2013/09/26(木) 21:21:44.02
>>22-25
それでは駄目です
oppai.GetChikubi().Nameru().MomuMomu();
みたいに関数呼び出しがチェーンします、そのうちの一部がnullでもエラーにならないようにしたいのです
一行で。
30デフォルトの名無しさん:2013/09/26(木) 21:23:31.54
お帰りはあちら
31デフォルトの名無しさん:2013/09/26(木) 21:24:05.87
間違った人は間違った方向に努力する典型と言わざるを得ない
32デフォルトの名無しさん:2013/09/26(木) 21:25:59.70
駄目なのはお前だと
33デフォルトの名無しさん:2013/09/26(木) 21:27:23.76
Objective-Cでもやれば
34デフォルトの名無しさん:2013/09/26(木) 21:29:02.00
System::Windows::Forms::Show(NULL,L"C++/CLIも忘れんな",L"Win32APITest",MB_OK);
35デフォルトの名無しさん:2013/09/26(木) 21:35:32.64
>>29
public static class Ext {
&nbsp; &nbsp; public static TOutput Do<TInput, TOutput>(this TInput obj, Func<TOutput> method) {
&nbsp; &nbsp; &nbsp; &nbsp;return obj == null ? default(TOutput) : method();
&nbsp; &nbsp; }
}

oppai.Do(GetChikubi).Do(Nameru).Do(Momu);
ぐらいで我慢しとけ
36デフォルトの名無しさん:2013/09/26(木) 21:42:38.84
これは難しい暗号だ。
37デフォルトの名無しさん:2013/09/26(木) 21:51:02.44
中途半端に代替案提示してやろうとするから食い下がるんだよ
有無を言わさず打ち砕け
38デフォルトの名無しさん:2013/09/26(木) 21:53:59.36
>オブジェクトがnullだった時のメソッド呼び出しをエラーにしない方法 ← ここが間違いの根本

コンポジションしたメソッドチェーン対応クラスでも書くのが正解
3935:2013/09/26(木) 21:54:19.91
色々問題があったけどまあいいや
40デフォルトの名無しさん:2013/09/26(木) 21:55:47.35
言語機能に付いてないんだから諦めろとしか
どうしても自分でやりたいなら
リフレクションで全てモックオブジェクト返すようなNullableでも作ればいい
41デフォルトの名無しさん:2013/09/26(木) 22:01:15.81
Roslynでも使えばいいんじゃない?
nullチェックの数千倍敷居が高いけど
4222:2013/09/26(木) 22:09:29.11
オブジェクト指向の関数の呼び出しはthisポインターの省略に過ぎないわけで
関数には言ったら
 if (this == null){
  return;
 }
と書ければ一発で解決することがなぜできない
43デフォルトの名無しさん:2013/09/26(木) 22:17:44.57
ようするにnullの時には、何もしない、という処理をしたいわけだ。
だから、>26が書いてるようにNullオブジェクトパターンで、
そもそものnullを、何もしない処理を実装したNullオブジェクトに置き換えればいいだけ。
Strem.Nullフィールドもそのパターンだな。
44デフォルトの名無しさん:2013/09/26(木) 22:23:13.54
>>22
無理じゃねーの?
.NETがメソッドテーブルか型情報持ってるかは知らんけど、
抽象メソッドinvokeすんのに何かしらのポインタもってないとダメだろ
そんなこんなでnull大丈夫なんて前提作れないだろ
45デフォルトの名無しさん:2013/09/26(木) 22:23:17.98
インスタンスないから関数にも入れないじゃん
46デフォルトの名無しさん:2013/09/26(木) 22:42:00.91
解説すると。

Stream stream = null;
だと、
stream.ReadByte();
で例外になる訳だ。

これをNullオブジェクトパターンにすると、
Stream stream = Stream.Null;
stream.ReadByte();
値は読めないが、例外で落ちることは無い。
47デフォルトの名無しさん:2013/09/26(木) 22:47:19.37
そんなこと誰でも知ってるが、それは何もしないオブジェクトをNull Objectと
呼んでいるだけのこと。

連想ゲームじゃねえんだから、名前にnullが付いてるからってnullと関係ないから。

試したわけじゃないけど、使うメソッド全てをあえて拡張メソッドで実装すれば
質問者の希望するような動作が可能かも知れないが、たとえ可能でもそんなアホなことするなと。

間違った方向に労力を投入するのはただの馬鹿
48デフォルトの名無しさん:2013/09/26(木) 22:49:47.25
>>45
C++は変態言語の名に相応しく、呼び出せるんだよなーこれが
もちろんthisにアクセスしたらアクセス違反だが
49デフォルトの名無しさん:2013/09/26(木) 22:51:23.12
ScalaのOptionがほしいんだろ?
型情報読み取って、その場で動的に作ればいい
どう見ても実用的じゃないが
50デフォルトの名無しさん:2013/09/26(木) 22:53:59.67
>>48
そんな事してまで呼び出してどうするんだと
どうせvirtualじゃ無い物限定だろ
51デフォルトの名無しさん:2013/09/26(木) 22:56:49.09
>>48
まったくこまった変態さんですね
52デフォルトの名無しさん:2013/09/26(木) 22:57:28.28
>>48
変態もクソもチェックしてないだけだぜ
ILならnullのインスタンスメソッドは呼べるし呼べるのが自然だが、
わざとチェック入れて例外を発生させてる
53デフォルトの名無しさん:2013/09/26(木) 23:04:06.27
>>47
別に名前なんてどうでもいいよ。
この質問者の目的をシンプルに解決する方法として、
Nullオブジェクトパターンと呼ばれている方法がいいんじゃないか、
というだけ。
54デフォルトの名無しさん:2013/09/26(木) 23:06:45.38
シンプルに解決できないだろ。
>>47が言うように実装全部を変更する羽目になる。
55デフォルトの名無しさん:2013/09/26(木) 23:08:58.83
>>21
おおおお!
原因はいまいち分かりませんができました!
ありがとうございます!
頑張ってソフトウェア完成させます!
5622:2013/09/26(木) 23:14:07.39
>>53
くだらない事でクラス数を増やしたくないのでNullオブジェクトパターンは無理です
ただ単にnullのオブジェクトの関数を呼び出して何もしたくないだけなんですがね
はぁ、何故こんな簡単なことが書けないんだC#は
57デフォルトの名無しさん:2013/09/26(木) 23:21:09.33
C#たんはダメな子なんです
我慢してください
58デフォルトの名無しさん:2013/09/26(木) 23:22:56.72
F#でも使えばいいんじゃねーの?
できるかしらんけど
59デフォルトの名無しさん:2013/09/26(木) 23:32:28.51
正常系でnullを返す自分の設計が糞なんだ
60デフォルトの名無しさん:2013/09/26(木) 23:35:46.51
そういえばそうだな。
null返さなければいいだけだ。
61デフォルトの名無しさん:2013/09/26(木) 23:36:19.15
nullなのにメソッド呼びたいとか考えたことなかった
62デフォルトの名無しさん:2013/09/27(金) 00:09:06.34
まずこの議論がくだらない
63デフォルトの名無しさん:2013/09/27(金) 00:11:23.66
疑問は(絶望的な方向に)解決したし、これ以上愚痴りたいなら穴掘ってどうぞ。
ここでやらないでね。
64デフォルトの名無しさん:2013/09/27(金) 00:25:10.55
>>56
だから、書くだけなら拡張メソッドでいけるよ。
65デフォルトの名無しさん:2013/09/27(金) 01:09:53.78
ところで、NULLはオブジェクトなのか?
66デフォルトの名無しさん:2013/09/27(金) 06:12:13.68
var o = oppai;
if(obj != null) o = o.GetSize(ref size);
if(obj != null) o = o.Lick();
if(obj != null) o = o.UseCandle(true);
if(obj != null) o = o.AttackBySperma();
if(obj != null) o = GoToHeaven();
67デフォルトの名無しさん:2013/09/27(金) 06:14:23.45
var o = oppai;
if(o != null) o = o.GetSize(ref size);
if(o != null) o = o.Lick();
if(o != null) o = o.UseCandle(true);
if(o != null) o = o.AttackBySperma();
if(o != null) o = GoToHeaven();
68デフォルトの名無しさん:2013/09/27(金) 07:20:37.93
wpfのListBoxで、画面に見えていないアイテムを表示させようとしているんだが
ItemContainerGenerator.ContainerFromIndexでListBoxIemを拾おうとしても、一度表示するまではnullが返ってくる
何とかなりませんか?
69デフォルトの名無しさん:2013/09/27(金) 08:44:51.92
確か仮想化を切ればいいはず
70デフォルトの名無しさん:2013/09/27(金) 09:13:15.41
>>69
ありがとう、おかげで何とかなりました

<ListBox VirtualizingStackPanel.IsVirtualizing="false" って書けばいいなんて判るかよ!
71デフォルトの名無しさん:2013/09/27(金) 12:08:56.90
失礼します。
Win7 64bitで作成しているのですが複数のdllを使用する時、一つでもx86用しか無い場合は
全てx86で使用するのが無難でしょうか?
72デフォルトの名無しさん:2013/09/27(金) 12:24:42.46
無難もなにも混在などできない
73デフォルトの名無しさん:2013/09/27(金) 12:31:30.07
>>72
返事ありがとうございます。
AnyCPUもどちらが動くかわからないから止めた方が良いと以前このスレで見かけましたので
ターゲットプラットフォームをx86で作るしか無さそうですね。
74デフォルトの名無しさん:2013/09/27(金) 13:10:31.44
nullをオブジェクトで扱うべきという議論は他でもあって、
関数型言語などではSOME/NONE型として扱ってる

C#の場合は拡張メソッドでどうよ?
FooクラスにHelloIfNotNullを書けない所にまだ良心が残ってるといえよう

class Foo {
public void Hello() { Console.WriteLine("Hello Wolrd !"); }
}
static class FooExtentions {
public static void HelloIfNotNull(this Foo o) { if (o != null) o.Hello(); }
}
75デフォルトの名無しさん:2013/09/27(金) 22:51:48.02
76デフォルトの名無しさん:2013/09/28(土) 17:31:45.92
Mac版Xamarin Studioが超絶バージョンアップ!C言語やD言語、F言語にも対応!Visual Studio不要に
http://engawa.2ch.net/test/read.cgi/poverty/1380351550/
77デフォルトの名無しさん:2013/09/28(土) 17:42:08.49
コピペマン参上!まで読んだ。
78デフォルトの名無しさん:2013/09/28(土) 18:25:39.29
C#はさ永遠とToString().ToString().ToString()....ってできるところがいいよね
79デフォルトの名無しさん:2013/09/28(土) 18:49:40.24
そんなに釣り要素満載だと胃もたれしてしまうよ
80デフォルトの名無しさん:2013/09/29(日) 15:26:33.18
動的に作成したコントロールに引数を追加する方法を探しています。

int i = 0;
while(true)
{
panel[i] = new Panel();
label[i] = new Label();

panel[i].Controls.Add(label[i]);

panel[i] += new EventHandler(panel_Click);
label[i] += new EventHandler(panel_Click);

this.Controls.Add(label[i]);
this.Controls.Add(panel[i]);

i++;
}
panel_Clickにiを渡したいのですが、方法がわかりません。
どうすれば出来ますか?
81デフォルトの名無しさん:2013/09/29(日) 15:29:57.91
> panel_Clickにiを渡したい
そんなことは出来ないので、iをTagに入れるか、
またはFormのコードなどでコントロールをキーにするDictionaryを持つようにする
82デフォルトの名無しさん:2013/09/29(日) 15:30:12.88
ソフトウェア板で答えたと思ったらマルチされてたでござるの巻
83デフォルトの名無しさん:2013/09/29(日) 15:30:39.12
>>80
マルチ死ね
84!ninja:2013/09/29(日) 18:17:59.40
c#6.0ってどうなってますか?
85デフォルトの名無しさん:2013/09/29(日) 18:33:15.02
どうでしょうなあ・・・
86デフォルトの名無しさん:2013/09/29(日) 18:34:18.89
マルチスレッドは簡単らしいです。
87デフォルトの名無しさん:2013/09/29(日) 20:01:43.26
>>80
panel[i].Click += ( sender, e ) => MessageBox.Show( i.ToString() );

とか?w
動的にコントロール生成って、どうしても初心者の方がやりたくなってしまう魅力があるのかな
88デフォルトの名無しさん:2013/09/29(日) 20:33:26.29
async/awaitより楽な非同期が思いつかない
89デフォルトの名無しさん:2013/09/30(月) 13:41:53.49
>>87
そのiはいつ評価されるの?

初心者に魅力って、お前同じコントロール100個あってもデザイナで頑張って張りつけるの?
そっちの方が初心者くさいと思わん?
90デフォルトの名無しさん:2013/09/30(月) 13:58:54.18
10個くらいなら普通に貼り付けてるな
91デフォルトの名無しさん:2013/09/30(月) 14:50:37.27
同じコントロール100個も貼らなくていいようにUI設計する
92デフォルトの名無しさん:2013/09/30(月) 17:22:02.45
同じコントロール100個貼り付けるってどんなプログラムだよ
93デフォルトの名無しさん:2013/09/30(月) 17:24:04.09
グリッドみたいなものを作るときによくやるよね
94デフォルトの名無しさん:2013/09/30(月) 17:26:59.30
テキストボックスだけで作るグリッド
95デフォルトの名無しさん:2013/09/30(月) 17:41:42.92
VB6のコントロール配列は良かった
96デフォルトの名無しさん:2013/09/30(月) 21:43:50.84
>>89
いいからサラのWindowsフォームアプリケーション作成して
コンストラクタに

public Form1()
{
 InitializeComponent();

 int i = 0;
 this.Click += ( s, e ) => MessageBox.Show( ( i++ ).ToString() );
}

って書いたらデバッグ実行してクリックしまくってみろ
97デフォルトの名無しさん:2013/10/01(火) 03:15:32.55
>>96
ループ内に書かないと。

int i = 0;
while (i < 10)
{
 if (i == 5)
   this.Click += (s, e) => MessageBox.Show(i.ToString());
 i++;
}
98デフォルトの名無しさん:2013/10/02(水) 17:00:27.75
推測されにくいIDってどうやって発行するのがいいでしょうか?
GUIDだと推測されやすいですか?
99デフォルトの名無しさん:2013/10/02(水) 18:24:25.56
>>98
ランダムな文字列を使うべき
100デフォルトの名無しさん:2013/10/02(水) 18:26:18.38
誕生日に1足すだけで推測されにくいよ。
101デフォルトの名無しさん:2013/10/02(水) 18:30:19.05
一般的な話だが、IDはユニークであれば推測されても問題ありません
102デフォルトの名無しさん:2013/10/02(水) 18:44:26.26
GUIDだったら推測は不可能に近いな
最近はIDも隠す傾向にあるよ。ユーザー入力のID&パスを使ってると、パス使い回し馬鹿が不正アクセスされるからw
103デフォルトの名無しさん:2013/10/02(水) 18:46:03.52
で最大長のランダムなパスワードにしてたら、パスワードを手入力を強制する糞サイトがあった。
104デフォルトの名無しさん:2013/10/02(水) 19:05:13.72
>>100
馬鹿

>>101
「推測されにくいID」という要件を無視して自説を垂れ流す無能

>>102
推測という言葉の定義によるからお前の意見にはノーコメント
ただ他人のGUIDを手に入れることは難しくないという事実だけは書いておく

>>103
コピペ禁止のJavaScriptすら外せない無能


このスレのプログラマがIDを取り扱うシステムを作るとこういうことになるんだろうな。

iPhoneアプリ「電波チェッカー」がUDID偽装可能だったことが発覚してからのまとめ
http://togetter.com/li/28715
> 実際にUDIDがあればその人の登録位置情報を地図上で閲覧できてしまうことを確認しました。
> 知人のiPhoneに私のUDIDをセットして電波チェッカーを起動したところ、私の自宅等の位置が現れました。
105デフォルトの名無しさん:2013/10/02(水) 19:08:44.97
>>104
(バカ度)優勝
106デフォルトの名無しさん:2013/10/02(水) 19:09:33.29
それは本来パスワードで保護すべきものを(利便性のために)してなかったってだけじゃん…
107デフォルトの名無しさん:2013/10/02(水) 19:11:40.21
>>104
なかなかいいよ君
タレントだね
108デフォルトの名無しさん:2013/10/02(水) 19:14:35.16
>>98
発行方法なら>>99で終了。GUIDもランダム文字と取れなくはないからその手の用途ならGUIDでもいいと思う
一般的には>>101、垢ハックが頻繁に起こりえるシステムなら>>102
iPhoneアプリ「電波チェッカー」がUDID偽装可能うんぬんはIDとまったく関係なし
109デフォルトの名無しさん:2013/10/02(水) 19:22:09.49
マルチスレッド簡単君うざい。
110デフォルトの名無しさん:2013/10/02(水) 19:26:36.63
>>109
アスペ脳のお前が一番鬱陶しいよ
111デフォルトの名無しさん:2013/10/02(水) 19:28:16.35
>>70うざいまで読んで
112デフォルトの名無しさん:2013/10/02(水) 23:18:08.61
Cのポインタみたいな使い方って、C#ではどうやるのでしょう?

struct aa {
char a;
char b;
short c;
};

struct bb {
char a;
char b;
char c[2];
}

みたいな構造体があったとして、データの中身を見ないとどっちかわからない。
aが1なら構造体aaを、そうでないならbbを使っている約束がある場合、
aの値を見てどちらかの構造体 aa と bb のポインタにキャストして使いたい
のですが。

このような場合、C#ではどうやればよいのでしょう?
MSDNのチュートリアルでを読んでみたのですが、参考になるような記述がなくて困っています。
よろしくお願いします。
113デフォルトの名無しさん:2013/10/02(水) 23:22:00.91
マーシャリング
114デフォルトの名無しさん:2013/10/02(水) 23:29:25.87
>>112
[StructLayout(LayoutKind.Sequencial)]を使う(C# 共用体 でググれ)
もしくはCと同様にポインタを使って
unsafe {
 aa x = getaa();
 bb* y = (bb*)&x;
 Console.WriteLine(y->c[1]);
}
やってることは結局同じなのでわざわざマーシャリングAPIなんて面倒なものを使う必要はない
115デフォルトの名無しさん:2013/10/02(水) 23:30:21.22
>>114
訂正
LayoutKind.Explicit
116デフォルトの名無しさん:2013/10/02(水) 23:32:29.82
あとC#では char c[2]; は構造体にunsafe付けて fixed char c[2]; な
変数2つ並べてもいいけど
117デフォルトの名無しさん:2013/10/02(水) 23:41:51.57
マーシャリングと structlayoutですか。
調べるキーワードがわかり、助かります。

ありがとうございました。ちょっと調べてみます。
118デフォルトの名無しさん:2013/10/02(水) 23:43:01.83
単純な受け渡しはマーシャリングでいいけど、構造体のレイアウトが絡んでくると
C#ならもうunsafeでCみたいなもの書けばいいと思うわ
複雑なマーシャリングでミスしやすくなるだけだよ遅いし
119デフォルトの名無しさん:2013/10/03(木) 03:31:25.90
まあしかし、データの中身みないと型が分からないとか、設計間違ってると
すくなくともC#でやるべき事じゃないと思う
120デフォルトの名無しさん:2013/10/03(木) 03:36:37.81
C#で完結する環境でやってたらただの馬鹿だが、ほかの環境のデータ読み込みだろ。こんなのはよくあるわ
121デフォルトの名無しさん:2013/10/03(木) 03:41:18.53
WinAPI使っててもあるね
122デフォルトの名無しさん:2013/10/03(木) 09:24:00.86
>>111
>>70だが、何で俺が巻き込まれているんだw
123デフォルトの名無しさん:2013/10/03(木) 09:55:46.08
1. WinFomsのComboBxをフォームに貼り付け、Itemsに"abc"を追加しておく
2. そのコンボボックスのAutoCompleteModeプロパティをNone以外にする
3. 実行してコンボボックスに"ABC"と入力する
4. コンボボックスからフォーカスを他に移すと、アイテム"abc"が勝手に選択されてしまう。
 もちろんTextプロパティも"abc"を返す

これってほとんどバグだと思うんですけど
回避策をご存知の方いらっしゃいませんか?
124デフォルトの名無しさん:2013/10/03(木) 10:02:05.17
オートコンプリートがcase-insensitiveであるのは仕様です
ご理解のほどよろしくお願いいたします
125123:2013/10/03(木) 10:14:18.87
AutoCompleteSourceに"abc"があるわけでもないし
そもそもAutoCompleteSourceを設定していなくても発生するんですよねー

よくある名前の変更ダイアログを想定してるんですが
履歴をコンボボックスとオートコンプリートの両方に入れていると
Caseを変更して保存できなくなるわけで……
126デフォルトの名無しさん:2013/10/03(木) 10:52:07.24
>>119
TCP/IPのパケットとか、地デジのTSパケットとか全部その設計だが。
127デフォルトの名無しさん:2013/10/03(木) 11:23:32.06
>>122
前スレかその前のスレの>>70のことだろうな
128デフォルトの名無しさん:2013/10/03(木) 11:34:04.87
マルチスレッド簡単君うざい。
129デフォルトの名無しさん:2013/10/03(木) 12:26:41.63
>>70登場
130デフォルトの名無しさん:2013/10/03(木) 12:31:00.48
70まで読んだ
131デフォルトの名無しさん:2013/10/03(木) 12:42:07.74
>>119は経験不足
132デフォルトの名無しさん:2013/10/03(木) 14:16:00.30
マルチスレッド簡単君は無職なのか。
133デフォルトの名無しさん:2013/10/03(木) 14:24:30.28
トイレで隠れて書き込むなよみんな気づいてんぞww
134デフォルトの名無しさん:2013/10/03(木) 15:30:55.46
TableLayoutPanel をデザイナーから追加すると
2列2行が自動で追加されます。
追加されないようにするには? 毎回手動で消すのが面倒になってきた
135デフォルトの名無しさん:2013/10/03(木) 18:40:45.93
どうすんだろうな
70なら分かると思うけど
136デフォルトの名無しさん:2013/10/03(木) 23:35:31.01
太陽系のシミュレーションを行おうとしているのですが,
まずdouble型で基本的なアルゴリズムを完成させました。
しかし太陽系の実際の質量などを代入するのには桁が足りません
いいライブラリをご存じないですか?
BigIntegerというのもありますが,できれば実数がいいです。
137デフォルトの名無しさん:2013/10/03(木) 23:39:17.61
doubleで足りないわけないだろ
10の±300乗だぞw
まさか精度が足りないとか?
太陽の質量が有効数字16桁で足りないとか人類の観測技術も進歩したもんだなww
138デフォルトの名無しさん:2013/10/03(木) 23:39:32.38
実数って何なんだろう
πとか代入されたら何桁まで格納されるのかなw
139デフォルトの名無しさん:2013/10/04(金) 01:02:00.54
太陽の質量に比べたら惑星の質量なんて誤差みたいなもんだろ
って話ではないのか
140デフォルトの名無しさん:2013/10/04(金) 01:04:57.13
>>137
今コンパイルが終わった
普通に出来てた
thxです
141デフォルトの名無しさん:2013/10/04(金) 01:11:01.79
何を言ってんだぁああああああああああああああああああああああ
142デフォルトの名無しさん:2013/10/04(金) 01:21:47.23
>>139
相互作用は積の形だからオーダー違いでも情報落ちはしないはず
143デフォルトの名無しさん:2013/10/04(金) 04:28:05.58
awkは、2^200を計算できないのですが、
bcコマンドは出来ます

Pythonは、2の1万乗、つまり3千桁も計算できる
144デフォルトの名無しさん:2013/10/04(金) 07:41:41.85
値の範囲と桁数は別ですよ
指数表記や有効数字を使ったことがない文系か
145デフォルトの名無しさん:2013/10/04(金) 08:24:24.06
short、int、long、たくさん
146デフォルトの名無しさん:2013/10/04(金) 12:14:33.80
for(int i=0; i<10 ; i++)
hoge(i)

このhoge(i)をTaskでやらせたい場合、どうやってiを渡せばいいの?
147デフォルトの名無しさん:2013/10/04(金) 12:20:05.31
キャプチャすればいいだけだがそれよりParallel.For使えYo
148デフォルトの名無しさん:2013/10/04(金) 12:30:52.46
新しい並列処理ってTaskだけじゃなかったのね、ありがとうございます。
149デフォルトの名無しさん:2013/10/04(金) 18:10:36.98
C#はマルチスレッドが簡単ですね。
150デフォルトの名無しさん:2013/10/04(金) 19:13:04.86
ここから70の自演
151デフォルトの名無しさん:2013/10/04(金) 19:23:54.73
マルチスレッドは楽だよC#では
152デフォルトの名無しさん:2013/10/04(金) 19:25:20.91
種まき中
153デフォルトの名無しさん:2013/10/04(金) 20:07:37.32
あんまり>>70をからかうなよ。スイッチ入るぞw
154デフォルトの名無しさん:2013/10/04(金) 20:12:08.43
実際C#のマルチスレッドは初心者でも簡単に扱えるよう設計されているよ
155デフォルトの名無しさん:2013/10/04(金) 20:17:54.96
水やり
156デフォルトの名無しさん:2013/10/04(金) 21:01:59.46
70ちゃんは間違いを指摘しろって言いつつ全然動かないコードを書いて、
whileとかbreakを追加して3度目でやっと動作するようになったけど当初の論点とは全然関係なくて、
MSの中の人のブログからパクって来たら速攻ばれたところがかわいかった
157デフォルトの名無しさん:2013/10/04(金) 21:09:01.15
拡散波動砲エネルギー充填
158デフォルトの名無しさん:2013/10/04(金) 21:11:42.63
>>70の頃は楽しかったなぁ(遠い目
159デフォルトの名無しさん:2013/10/04(金) 21:25:13.92
>>156
あれ>>70が論破して勝ったことになってるんだぞ(>>70の中では
160デフォルトの名無しさん:2013/10/04(金) 21:25:45.72
助さん拡散懲らしめてやりなさい
161デフォルトの名無しさん:2013/10/04(金) 21:45:54.75
変数は全部volatileつけといたらええねん
162デフォルトの名無しさん:2013/10/04(金) 23:00:17.65
マルチスレッド簡単君うざいよ。
163デフォルトの名無しさん:2013/10/04(金) 23:07:04.63
>>70まで読んだ
164デフォルトの名無しさん:2013/10/04(金) 23:07:06.39
いままで使った中でマルチスレッドが難しかった言語なんてVB6だけだが
165デフォルトの名無しさん:2013/10/04(金) 23:10:02.10
このスレの70マジ被害者
166デフォルトの名無しさん:2013/10/05(土) 12:27:54.53
オープンソース界に激震、GitHubがRubyとMVCの限界を悟り、C#とMVVMに全面移行
http://hayabusa3.2ch.net/test/read.cgi/news/1380941672/
167デフォルトの名無しさん:2013/10/05(土) 12:36:18.74
GitHubはもともとRubyディスで
言語選定は十分に検討すべきって事例だった
フレームワークがよくても基本性能は補えない
168デフォルトの名無しさん:2013/10/05(土) 14:37:38.93
その状況に対して危機感を隠せない男がいた
このままではマイクロソフトに覇権を奪われてしまう…!!

「お前には二度とGitの名前は使わせねぇッ!」

こうして GitHubはその名前すら変える羽目となり
ユーザー流出は留まるところを知らなかった…
169sage:2013/10/05(土) 16:22:04.59
マルチスレッド簡単君はずっとこのスレを監視してるんだね。

一体過去に何があったんだ。
170デフォルトの名無しさん:2013/10/05(土) 16:34:15.74
>>169
過去というより現在進行形で精神病
171デフォルトの名無しさん:2013/10/05(土) 16:43:09.24
>>70は1人だが、マルチスレッド簡単君()は複数
172デフォルトの名無しさん:2013/10/05(土) 17:45:13.75
MVVMはMVCよりマルチスレッド簡単
173デフォルトの名無しさん:2013/10/05(土) 17:48:36.00
>>70まで読め
174デフォルトの名無しさん:2013/10/05(土) 21:14:56.02
最近C#を勉強し始めた高校生です
TabContainerを使い簡単なTabbrowserを作っています
Button1でTabPageを追加、Button2でアクティブのタブを削除までは出来たのですが、更新、進む、戻るの指示がなかなか出せません・・・
教えていただけたら嬉しいです
175デフォルトの名無しさん:2013/10/05(土) 21:22:32.47
その質問は実装に全く触れてないから推測しかできんよ
WebBrowserならGoBack,GoForward,Refreshあたり
176デフォルトの名無しさん:2013/10/05(土) 21:32:46.95
HTMLパーサーを作るなんて無謀なことを高校生がせんだろ
177デフォルトの名無しさん:2013/10/05(土) 21:33:13.79
Tabオブジェクトがブラウザのプロキシになって
各タブにコマンド発行するみたいな形が定石じゃね?
178デフォルトの名無しさん:2013/10/05(土) 21:58:34.22
この高校生のスキルは>>176-177よりも遥かに上だなw

WebBrowser メソッド
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.webbrowser_methods(v=vs.85).aspx

この辺り見てメソッド打ち込めば大抵動く
ものによってはページの読み込み終わった後じゃないと使えないから、まともに作るならDocumentCompleted?なんかを
きちんと処理。とりあえず動かしたいなら、確実に読み込み終わるまで待ってからボタン押してテスト
179デフォルトの名無しさん:2013/10/05(土) 22:56:29.95
>>178
WebBrowserで面倒なのは
MouseDown このコントロールでは、このイベントはサポートされていません。(WebBrowserBase から継承されます。)

ここら辺だよ
180デフォルトの名無しさん:2013/10/05(土) 22:59:18.06
>>179
本当にハマるのはBSキーの扱い。勝手に消すなよ
181デフォルトの名無しさん:2013/10/06(日) 17:30:30.21
WebBrowserだとマルチスレッドで管理するのが難しい。
182デフォルトの名無しさん:2013/10/06(日) 17:40:15.01
否定しない
183デフォルトの名無しさん:2013/10/06(日) 18:26:05.79
WebBrowserはDocumentText使うと重い
184デフォルトの名無しさん:2013/10/06(日) 18:31:14.87
否定できない
185デフォルトの名無しさん:2013/10/06(日) 20:37:08.50
bool Func(BinaryReader reader, int[] a) {
  foreach (var n in a) if (reader.ReadInt32() != n) return false;
  return true;
}
って書いたら、ReSharperに、
bool Func(BinaryReader reader, int[] a) {
  return a.All(n => reader.ReadInt32() == n);
}
って書けるよと言われたんですが、Allって先頭から順番に検査することが保証されてるんですか?
186デフォルトの名無しさん:2013/10/06(日) 20:43:15.22
当然だけど評価順はforeachと等しいよ
187デフォルトの名無しさん:2013/10/06(日) 21:30:26.30
つかそれ、先頭から順番に「検査」する必要も保障もいらないんじゃないかと
188デフォルトの名無しさん:2013/10/06(日) 21:43:16.02
つか、これほど無駄なLinqも珍しいw
189デフォルトの名無しさん:2013/10/06(日) 22:51:36.15
またなんか生産性のない書き込みをしてるのか
生産性の高い言語使ってても意味ないな
190710:2013/10/06(日) 22:58:46.83
生産性のない書き込み ⇒ >>189-190
191デフォルトの名無しさん:2013/10/06(日) 22:59:04.52
何それ自戒?
192デフォルトの名無しさん:2013/10/06(日) 23:11:22.48
LINQ脳ならBinaryReaderをyield使ってIEnumerableでラップした上でSequenceEqualだろ
193デフォルトの名無しさん:2013/10/07(月) 08:49:38.58
マルチスレッド簡単君。いいかげんにしなさい。
194デフォルトの名無しさん:2013/10/07(月) 10:18:46.65
拡張メソッド脳だから IEnumerable<T> BinaryReader.Enumerate<T>()を作るね
195デフォルトの名無しさん:2013/10/07(月) 10:53:50.72
framework4.0から4.5でマルチスレッド何か良くなった?
196デフォルトの名無しさん:2013/10/07(月) 11:25:27.16
フォームのTreeViewの一番上にTreeNodeを追加しようとすると、

型 'int' を型 'System.Windows.Forms.TreeNode' に暗黙的に変換できません。

ってエラーになるのはどうして?

var root = treeView.Nodes.Add (new TreeNode ("World"));
root.Nodes.Add (new TreeNode ("World"));

1つ下の階層なら追加できる。
ルートノードだけ特殊なの????
197デフォルトの名無しさん:2013/10/07(月) 11:48:17.69
AddとInsert間違えてない?
198196:2013/10/07(月) 11:57:53.98
AddもInsertも同じでしょ。Insertの方は、

型 'void' を型 'System.Windows.Forms.TreeNode' に暗黙的に変換できません。

って出てきます。何でやーー
199デフォルトの名無しさん:2013/10/07(月) 12:16:07.65
日本語にすれば違いがわかるような
200デフォルトの名無しさん:2013/10/07(月) 12:26:38.56
まあたいてい特殊なのは動かないって言う人のコードなんですが
http://www.dotup.org/uploda/www.dotup.org4560485.png
201デフォルトの名無しさん:2013/10/07(月) 12:32:24.72
voidをなんちゃらってことは
Add(返値がvoidのメソッド())
ってやってるってことだろ
コード見直せ
202デフォルトの名無しさん:2013/10/07(月) 12:35:28.21
>>200
見えない
203デフォルトの名無しさん:2013/10/07(月) 12:41:43.04
>var root = treeView.Nodes.Add (new TreeNode ("World"));
>root.Nodes.Add (new TreeNode ("World"));

Add(TreeNode)の戻値はintだぞ
Insert(index,TreeNode)の戻値はvoid
204デフォルトの名無しさん:2013/10/07(月) 12:55:50.80
はい解散
関係者は後片付けしとけ
205196:2013/10/07(月) 12:58:31.07
すみません私がアホの子でした、生きていてすみません。
>>203が正解です
206デフォルトの名無しさん:2013/10/07(月) 14:01:02.70
>>199で答え書いたやないか・・・
207デフォルトの名無しさん:2013/10/07(月) 16:00:42.72
前スレに書いてあったマルチコアのための非同期/並列処理プログラミング買ってみた。
内容はC#で検索して出てくる有名サイトレベルだからここで質問に答えてる人には不要だけども、
framework別に読みやすく書いてあるから、とりあえずC#がなんとなく書けるようなってきたけど
このバージョンだと何使ったらいいの?って感じの初心者さんなら良いかも。
208デフォルトの名無しさん:2013/10/07(月) 16:55:58.17
70、出番
209デフォルトの名無しさん:2013/10/07(月) 17:01:23.14
>>195
MSのマルチスレッドライブラリ開発者の解説では、
多くの最適化が外され遅くなりましたが、多くのバグが取り除かれました。

マルチスレッドするなら4.5一択です。
210112:2013/10/07(月) 22:13:45.96
>>126
ホントはそれです。
socket通信の割と単純なプログラムなんですが、これをC#でやってほしいという要望があって、わりと弱ってます。
Cしか知らないから、C#で見栄えに関係するところだけごまかして、後はCでDLL作ってごまかしちゃおうかとも思い始めてます。
unsafeコードでfixed使いまくるとなんとか私でもできそうですが。

いわゆるCの構造体を扱うような、メモリとデータの使い方はC#ではやらないということみたいですね。
不勉強で、ここで質問できるレベルにも達していないというのがよくわかりました。

ありがとうございました。
211デフォルトの名無しさん:2013/10/07(月) 23:54:45.09
>>187
ReadInt32() を呼ぶ順番で違う結果になるんじゃないの?
212デフォルトの名無しさん:2013/10/08(火) 00:07:17.21
>>210
Cに慣れてんなら構造体に頼らなくてもバイト配列をビット演算すればいいだろ?
Cでもエンディアンを考慮する場合はそうやるでしょ
BinaryReaderを使ってもいいが多分君には合わない
213デフォルトの名無しさん:2013/10/08(火) 00:31:27.36
>>209
4.0にそんなにバグあるの?
214デフォルトの名無しさん:2013/10/08(火) 01:30:32.72
バイト配列の中身見てから各構造体にコピーするだけやん。
215デフォルトの名無しさん:2013/10/08(火) 02:36:09.67
バイト配達
216デフォルトの名無しさん:2013/10/08(火) 02:54:55.73
>>214
そんなことはみんなわかってんだよ。その上でCにありがちな方法はって言ってるんだろ
217デフォルトの名無しさん:2013/10/08(火) 03:20:01.74
ならC++.net + unsafeにすればいい。
218デフォルトの名無しさん:2013/10/08(火) 08:38:48.02
無碍で悪いがちょっと静かにしてて、君
219デフォルトの名無しさん:2013/10/08(火) 09:09:20.87
70だろ。何言っても無意味
220デフォルトの名無しさん:2013/10/08(火) 09:26:24.89
普通かどうかわからないけど
構造体の代わりにクラス作って
まとめて代入するメソッドとか
好みの形式で取り出すメソッドとか書くよね?
221デフォルトの名無しさん:2013/10/08(火) 09:30:47.34
そのクラスの中でやってる取り出し方の話
222デフォルトの名無しさん:2013/10/08(火) 12:03:30.10
>>220
黙れ
223デフォルトの名無しさん:2013/10/08(火) 12:33:10.86
>>222
お前が黙れ
224デフォルトの名無しさん:2013/10/08(火) 12:43:30.09
DataTableの特定のカラムに格納されている文字列が特定の文字数の項目の行のみを抽出して、新しいDataTableに全てのカラムを含めて該当する行をコピーしたいのですが、どんな感じに記述すればいいでしょうか。

こんな感じです(果物名が3文字の項目だけ取り出して、新しいDataTableにコピーしたい)。
DataTable1
ID|果物名|個数|単価…
0 |りんご|10  |100
1 |かき  |7   |50
2 |ぶどう |5   |300
3 |なし  |15  |120

DataTable2
ID|果物名|個数|単価…
0 |りんご|10  |100
2 |ぶどう |5   |300
225デフォルトの名無しさん:2013/10/08(火) 12:44:17.57
マルチスレッド簡単君にCの話は無理だよ。
226デフォルトの名無しさん:2013/10/08(火) 12:47:59.67
>>224
・DataTable1の全アイテムを取り出す
・取り出したアイテムから名前を取り出して比較する
・DataTable2にアイテムを追加する
・DataTable1で見つかったアイテムをDataTable2に追加する
順番にやってけば完成するだろ
227デフォルトの名無しさん:2013/10/08(火) 12:49:06.46
>>224
DataTable.Selectして、既にテーブルがあるならDataTable.ImportRow、ないならCopyToDataTableとか
228デフォルトの名無しさん:2013/10/08(火) 15:09:30.04
private void hoge(int i, out double[] aa, out double[] bb);

上記をデリゲートにして、aaとbbの二つの配列に値が入るまで待ってから
値を取り出すにはどのようにしたら良いのでしょうか?
229デフォルトの名無しさん:2013/10/08(火) 15:18:51.82
折りたためるグループボックスないですか
量が多いので最初は一度に表示せずに折りたたんだ状態で▼キーを押したら展開みたいにしたいです
こんな感じで作りたいのですがそれっぽいWindowsフォームが見つかりません
http://docs.unity3d.com/Documentation/Manual/Inspector.html
230デフォルトの名無しさん:2013/10/08(火) 15:22:05.13
折り畳めないがタブコントロールに放り込む
231デフォルトの名無しさん:2013/10/08(火) 15:25:29.73
code projectで探せば多分ある
見た目は違うが、XPのエクスプローラの左側にあるやつっぽいのは見た覚えがある
232デフォルトの名無しさん:2013/10/08(火) 15:26:40.25
>>228
> aaとbbの二つの配列に値が入るまで待ってから
意味が分からん
delegate void HogeCallback(int i, out double[] aa, out double[] bb);
として
HogeCallback callback = hoge;
なcallbackを使うなら
double[] aa, bb;
callback(i, out aa, out bb);
Debug.Print("{0}", aa[0]);
にするだけだろう?
233229:2013/10/08(火) 15:59:30.09
>>230-231
標準のVisualStudioでは作れないと言うことでしょうか
だとしたらUnity社はどうやって>>229みたいな物を作れたのでしょうか
頑張ればできそうなきがするのですが
234デフォルトの名無しさん:2013/10/08(火) 16:01:13.47
当然作れるが、自分で自作コントロール作りたいのか。
MSのサンプルあったと思う。
235デフォルトの名無しさん:2013/10/08(火) 16:14:11.66
>>232
言葉足らずですいません。
Labelコントロールにて表示しているので、それを行うとInvalidOperationExceptionが発生していますのでInvokeで使おうとしたら受け取り方がわかりませんでした。
よろしくお願いします。
236デフォルトの名無しさん:2013/10/08(火) 16:25:46.65
>>233
FlowLayoutPanelでそれっぽくできそうな気はする
237229:2013/10/08(火) 16:30:57.16
折りたたむのは無理
238デフォルトの名無しさん:2013/10/08(火) 16:36:02.98
double[] aa = null, bb = null;
await Task.Run(() => method(i, out aa, out bb));
label1.Text = BitConverter.ToString(aa);

4.5だとこうか
239228:2013/10/08(火) 17:12:20.75
>>238
VS2010なんで、4.5で書けないんです・・・。
240デフォルトの名無しさん:2013/10/08(火) 17:41:40.32
TaskScheduler.FromCurrentSynchronizationContextとTask.Factory.StartNewとTask.ContinueWithで代用
241228:2013/10/08(火) 18:09:18.98
>>240
Taskを使用するとなかなか大変になりそうですね・・・。
MSDNや解説しているサイトで勉強してきます。
ありがとうございました。
242デフォルトの名無しさん:2013/10/08(火) 18:29:58.65
いや、むしろ簡単になるんだが…
243デフォルトの名無しさん:2013/10/08(火) 18:33:31.41
この意味不明な質問は>>70臭がする
244デフォルトの名無しさん:2013/10/08(火) 18:34:09.53
マルチスレッド簡単君うざいよ。
245デフォルトの名無しさん:2013/10/08(火) 18:36:08.50
お、70
246デフォルトの名無しさん:2013/10/08(火) 18:36:59.39
なにがあったか知らんが未だに粘着してるってよほど悔しかったんだな。
247デフォルトの名無しさん:2013/10/08(火) 18:37:52.75
>>70
今日も自演か?精が出るねえ!
248デフォルトの名無しさん:2013/10/08(火) 18:38:41.42
マルチスレッドが絡んでそうな質問内容
>>70臭」への素早い反応
これは当たりかもな
249デフォルトの名無しさん:2013/10/08(火) 18:45:04.13
なるほど。マルチスレッドで論破されたのか。知ったかでもしたのか?

【レス抽出】
対象スレ:ふらっとVisual C#,C♯,C#(初心者用) Part107
キーワード:>>70

抽出レス数:13


どんだけキチガイ粘着してんだよwwww
250デフォルトの名無しさん:2013/10/08(火) 18:46:17.04
そいつ他スレでも>>70言ってる基地だぜ。関わるとさらに暴れる。
251デフォルトの名無しさん:2013/10/08(火) 18:47:11.55
他人のふり他人のふりww
252デフォルトの名無しさん:2013/10/08(火) 18:47:52.06
自己レスが始まったぞ
今回も長引くな
253デフォルトの名無しさん:2013/10/08(火) 18:51:31.44
自演始まったwww
254デフォルトの名無しさん:2013/10/08(火) 18:52:20.16
なんかよく分からんがこれだけ粘着されるのは凄いな
255デフォルトの名無しさん:2013/10/08(火) 18:56:12.26
なんかわからんが〜とか、〜でもしたのか?とか
いま初めて知った風な書き込みが20分で3回も
256デフォルトの名無しさん:2013/10/08(火) 18:58:19.12
このスレの>>70は無関係なのに可哀想
マルチスレッド簡単君うざい
257デフォルトの名無しさん:2013/10/08(火) 19:01:11.59
>>233
WPFには標準であるんだけどね
258デフォルトの名無しさん:2013/10/08(火) 19:04:12.53
なんか分からんが会話のレパートリーがないんだろ
259デフォルトの名無しさん:2013/10/08(火) 19:06:52.77
なんか分からんがそういうことだな
260デフォルトの名無しさん:2013/10/08(火) 19:08:12.42
24時間監視してる無職らしい。アニメの放送時間は書き込まないらしい。
まどきまぎかの人形をもってるらしい。猫好きらしい。すぐ沸騰するらしい。

分かってるのはここまで。
261デフォルトの名無しさん:2013/10/08(火) 19:12:53.19
なんか分からんが祐輔に似てるな。
262デフォルトの名無しさん:2013/10/08(火) 19:20:26.24
>>260-261
自己紹介乙
263デフォルトの名無しさん:2013/10/08(火) 19:30:34.25
1)WPFでWindowsFormsHostでFormsのコントロールを配置している。
2)XAMLでContextMenuを作成した。
3)1のFormsコントロールのContextMenuに2を追加したいのですが、
当然FormsとWPFのContextMenuだから、だめでした。
どのようにすればいいのでしょうか?
264デフォルトの名無しさん:2013/10/08(火) 19:38:14.54
Formsコントロールの右クリックイベントで
コードからWPFのContextMenuを開けばいいんじゃないの
265デフォルトの名無しさん:2013/10/08(火) 20:06:12.37
それはやってみたのですが、メニューが灰色表示のままで選択ができない状態になってしまいました。
これの原因もちょっと調べているところですが、判明しません。
266デフォルトの名無しさん:2013/10/08(火) 20:13:21.70
空域のせいだろ
逆にWinFormsのContextMenuをWPFの上で開くのはできるんじゃない?
それか枠のないウィンドウを開いてその中でWPFのContextMenuを開くとか
267デフォルトの名無しさん:2013/10/08(火) 20:30:02.38
空域ですか?
CommandBindingでCanExecuteとか書いてるので、
枠のないウィンドウでWPFのContextMenuを開く方法をためしてみます。
ちょっと、自分にかけるか疑問ですが。
ありがとうございました。つまずいたらまた来ます。
268デフォルトの名無しさん:2013/10/08(火) 22:39:44.51
コントロールの設定がぐちゃぐちゃになってしまったんだけど
これ全てのプロパティを初期値に戻すボタンないの?
もう無理
269デフォルトの名無しさん:2013/10/08(火) 22:44:43.30
全リセットなら消して新しいのを貼ればいいだろ
270デフォルトの名無しさん:2013/10/08(火) 22:45:34.65
全部張ったら一度コミット
当然の行い
271268:2013/10/08(火) 23:11:55.85
>>269
ちょーめんどくさい
>>270
タイムマシンください
272デフォルトの名無しさん:2013/10/08(火) 23:22:23.34
.Designer.csをテキスト編集
273デフォルトの名無しさん:2013/10/09(水) 00:54:16.56
なら、諦めろ。
274デフォルトの名無しさん:2013/10/09(水) 07:28:40.06
俺は>>272でやってるな
プロパティを変更してる行を削除すればいいことだから
275デフォルトの名無しさん:2013/10/09(水) 18:51:28.71
.NETってLinuxとMacでは動かないじゃないですか
そこでmonoっていうのがあるじゃないですか
ぼくはWindows XPしかもってませんがMacかUbuntuを使うかもしれません
そこでWindowsでもmonoで作っておけばコードを修正しなくてもクロスプラットフォームにプログラムは動かせるでしょうか?
あとお金がないというかそこまでレベルが高いわけじゃないので無料版のVC#2010 Expressを使ってるんですが
monoはVC#2010 ExpressでもF5でデバッグしたりF6でリリースしたり、コードを保管したりしてくれるのでしょうか?
基本的に.NETで書いたコードは修正しなくてもmonoで動きますか?
276デフォルトの名無しさん:2013/10/09(水) 18:52:42.97
死ね
277デフォルトの名無しさん:2013/10/09(水) 18:54:42.33
待っている間に入れて確認した方が早いかもな
278デフォルトの名無しさん:2013/10/09(水) 19:11:20.74
> ぼくはWindows XPしかもってませんがMacかUbuntuを使うかもしれません

使うことはなさそうだ
279デフォルトの名無しさん:2013/10/09(水) 19:16:15.49
plamo linux の話はどこできけばいい?
280デフォルトの名無しさん:2013/10/09(水) 19:27:12.99
>>279
google先生にどこにスレがあるか聞け。もしくは氏ね
281デフォルトの名無しさん:2013/10/10(木) 04:42:03.66
SSD買っちゃった
これでIDEもさくさくかな
282デフォルトの名無しさん:2013/10/10(木) 04:44:58.21
残念なことに容量が小さくて不便なだけだ
283デフォルトの名無しさん:2013/10/10(木) 04:48:32.83
久しぶりにみたらVSってもう2013になってるのか・・・
未だに2010使ってたわw
284デフォルトの名無しさん:2013/10/10(木) 09:32:19.84
8.1は来週なんだよな。てか、Windows8はマウスのホイールクリックあたりにウインドウズキーを割り当てるとwin7より快適だろ
285デフォルトの名無しさん:2013/10/10(木) 11:46:48.34
ネイティブのDLLを含むカスタムコントロールを作って、
ツールボックスの所からフォームにドラッグ&ドロップすると

DLL 'csfml-graphics-2' を読み込めません: 指定されたモジュールが見つかりません。 (HRESULT からの例外: 0x8007007E)

って出てDLLがロードできないのですが、このDLLはプロジェクトのどこのフォルダーに置けばいいのでしょうか。
このDLLはLoadイベントで使用されて普通は bin/Debug の下に置いておけばロードしてくれます
286デフォルトの名無しさん:2013/10/10(木) 11:59:36.99
そのDLLをプロジェクトに含めておいて常にコピーするっていう
設定をしておけばいいよ
287デフォルトの名無しさん:2013/10/10(木) 13:23:32.89
DevEnvから読めるところでないかい?
288285:2013/10/10(木) 14:50:32.40
>>286
それではダメです。
もともとそういう設定になっていて通常アプリではネイティブDLLのロードは出来ています。
ただ単にツールボックスのカスタムコンポーネントをドラッグ&ドロップでフォームに追加しようとすると
このDLLを見つけられなくて(というかそもそも探しに行ってない雰囲気)>>285のエラーが出ます

>>287
よくわからないので今調べています
289デフォルトの名無しさん:2013/10/10(木) 15:19:34.60
>それではダメです。
ワロタwww
素直に従っておけよ
290285:2013/10/10(木) 16:03:28.54
そもそもカスタムコントロール(のコンストラクターとLoadイベント?)で
外部のネイティブDLLをロードする事が可能かどうかが知りたいのです。
昼間からググってますが全然情報がないです。もしかして絶対に不可能なことをやろうとしてるんじゃ・・・
291デフォルトの名無しさん:2013/10/10(木) 16:10:27.62
ネイティブDLLをロードできんかったら.NETそのものが成り立たんだろ
適当にPATH通しておけ
292デフォルトの名無しさん:2013/10/10(木) 16:48:56.73
PCのどこにあるかもわからんDLLを適当に検索して勝手に使われる方が怖すぎるはw
293デフォルトの名無しさん:2013/10/10(木) 17:35:39.02
デリゲートする処理の中に別のデリゲート入れると、暴走しやすくなります?
294デフォルトの名無しさん:2013/10/10(木) 17:42:50.91
C#を勉強するときに読んだほうがいい最強の書籍を教えてください
10日で覚えるとかそういうのはクソでうs
295デフォルトの名無しさん:2013/10/10(木) 17:43:14.93
>>293
もちっと具体的に。
イベントの再入のこと?それとも非同期イベントかな?
296デフォルトの名無しさん:2013/10/10(木) 17:47:27.98
マルチスレッドじゃないかぎりトラブリようないと思うけど。
297デフォルトの名無しさん:2013/10/10(木) 17:49:52.20
暴走するかどうかは組み方次第
298デフォルトの名無しさん:2013/10/10(木) 17:53:50.42
1コアのCPUだとマルチスレッドで動くようにコード書いても意味ないですか?
299285:2013/10/10(木) 17:58:53.73
>>291
あなたは問題を理解していないです。
普通に.NetアプリからネイティブDLLを使うのは問題ありません。
基本は実行ディレクトリにDLLを置いておくだけです。
ここで問題にしているのはツールボックスに表示する時にVisualStudioが
該当するコントロールのコンストラクターとLoadイベントを実行しますが、
その時の実行ディレクトリがわからずDLLもロード出来ないことです。
ちなみにプロジェクトの全てのディレクトリにDLLをコピーしてみましたが
やはりDllNotFoundExceptionが発生しました。
VisualStudioの仕様でどうやっても無理な気がします。
300デフォルトの名無しさん:2013/10/10(木) 17:58:58.65
何をどういう目的でマルチスレッドするかによる
301デフォルトの名無しさん:2013/10/10(木) 18:02:17.73
>>299
あなたは問題を理解していないです。
ネイティブで「コントロール」ということは問題のDLLはActiveXコントロールなのでしょう
COMは登録されていればレジストリにパスが入っているのでDLLが見つからないということは起こりません
debugフォルダに入れて動いたというのならば、debugフォルダにコピーされるように設定すればいいでしょう
あなたの頭ではどうやっても無理な気がします。
302デフォルトの名無しさん:2013/10/10(木) 18:16:17.01
>>299
そのコントロールでカレントディレクトリをログに出してみればいいのではないか
303デフォルトの名無しさん:2013/10/10(木) 18:16:49.81
>>299
えっと、PATHって分かる?
304デフォルトの名無しさん:2013/10/10(木) 18:18:20.84
とりあえず読め
http://msdn.microsoft.com/ja-jp/library/bb546934.aspx

WPFとSilverlightって書いてあるけどFormsでも同じ
305デフォルトの名無しさん:2013/10/10(木) 18:18:54.58
>>295
すいません、自分で書き換えておいて忘れてました。
ParallelForで同時に呼び出した関数それぞれをTaskで処理し、その中でLabelコントロールに計算結果を表示する為にデリゲートをInvokeで呼び出しているのですが
表示を入れるようになってから動作が不安定になってきています。
306デフォルトの名無しさん:2013/10/10(木) 18:20:11.97
とりあえず何故ParallelFor→Taskなんて無駄なことを
307デフォルトの名無しさん:2013/10/10(木) 18:26:17.10
>>301
他の人間は状況理解してるようだけど、お前は理解してないな
308デフォルトの名無しさん:2013/10/10(木) 18:37:37.97
ユーザーコントロールから例えばqt.dllを使ってるとか、そういう話だろ?
理解し難い所なんてないと思うが。
309デフォルトの名無しさん:2013/10/10(木) 18:44:49.84
>>305
Control.Invokeの呼び出しやその他のGUI同期用の手段を講じていないだけじゃない?
310デフォルトの名無しさん:2013/10/10(木) 18:50:29.67
面倒だからVSのフォルダに全dllを入れてしまえ
311デフォルトの名無しさん:2013/10/10(木) 18:52:52.90
ループ厨は黙ってろよ。
312デフォルトの名無しさん:2013/10/10(木) 18:53:17.78
いやSystem32だろ
313デフォルトの名無しさん:2013/10/10(木) 18:54:53.70
ActiveX厨も静かにし給え。
314デフォルトの名無しさん:2013/10/10(木) 18:56:25.25
70のご登場〜
315デフォルトの名無しさん:2013/10/10(木) 18:57:07.43
なんだ70か。
316デフォルトの名無しさん:2013/10/10(木) 18:57:53.27
まだ粘着してるwww キモッwww
317デフォルトの名無しさん:2013/10/10(木) 18:57:54.02
なにがあったか知らんが未だに7070連呼してるってよほど悔しかったんだな。
318デフォルトの名無しさん:2013/10/10(木) 18:58:29.26
>>70
って普通のレスやん?
319デフォルトの名無しさん:2013/10/10(木) 18:59:01.53
>>299
みんなパス通せって言ってるじゃん
320デフォルトの名無しさん:2013/10/10(木) 18:59:37.50
マルチスレッド簡単君よ、他のスレまで荒らしてんじゃねーぞ、キチガイが。
321デフォルトの名無しさん:2013/10/10(木) 19:01:28.05
なんかよく分からんが荒れそうだな
322285:2013/10/10(木) 19:06:24.02
>>310 とっくにやった
>>321 とっくにやった
よく読め

どうも無理みたいなのでフォームのコンストラクターでDLLを必要としないように改造します
すこし弄ってみたら出来そうだったので、たぶんこれが一番エレガントな解放
みなさんいろいろありがとうございました。
糞の役にも立ちませんでした。
323デフォルトの名無しさん:2013/10/10(木) 19:07:28.82
はい、さようなら。
324デフォルトの名無しさん:2013/10/10(木) 19:12:51.93
>>322
>糞の役にも立ちませんでした。
自分の未熟さに気付けただろ?良かったじゃん。
325デフォルトの名無しさん:2013/10/10(木) 19:14:58.28
読み返したら>>286で終わってた
326デフォルトの名無しさん:2013/10/10(木) 19:30:32.95
bin\debugにコピーしても無駄なんだけど、そこら辺判らなかったんだろうな
327デフォルトの名無しさん:2013/10/10(木) 21:26:08.01
>>322
フルパスで書け
328デフォルトの名無しさん:2013/10/10(木) 22:14:16.97
単に必要な DLL ってのを勘違いしてるだけに思えるんだが。
329デフォルトの名無しさん:2013/10/10(木) 22:15:14.22
一生終わった話に突っ込み続けて末永くお幸せに
330デフォルトの名無しさん:2013/10/10(木) 22:58:32.79
くやしいのうwww
331305:2013/10/11(金) 09:26:45.58
>>306
なんか速くなりそうかなと思って色々追加している内に無駄なことをしてしまったようです。
Taskをやめて普通に関数呼び出しにしたら安定しました。
ありがとうございます。
332デフォルトの名無しさん:2013/10/11(金) 20:33:24.71
333デフォルトの名無しさん:2013/10/11(金) 21:51:00.26
すんごい初歩的な質問で申し訳ないですが
読み取り専用プロパティの存在意義がよくわかりません
public readonlyで宣言すればいいんじゃないかと思ってしまいます
334デフォルトの名無しさん:2013/10/11(金) 21:52:51.68
public readonlyを一般的な方法でオーバーライドしてみろ
335デフォルトの名無しさん:2013/10/11(金) 22:00:11.71
遅延初期化できない
336デフォルトの名無しさん:2013/10/11(金) 22:16:03.21
コピーを返せない
337デフォルトの名無しさん:2013/10/11(金) 22:26:26.59
>>333
読み取り専用プロバティーとはクラスが外からは設定できないが、内部の情報を渡すときに使う
例えばプロバティーAとBを掛けたものをCで返すクラスが有ったとすると、AとBは書き込みできるが
結果を表すCは設定する必要がないから読み取り専用プロバティーにする
って事で一度しか設定できないreadonlyとはおもいっきり違います
338デフォルトの名無しさん:2013/10/11(金) 22:32:36.85
public readonlyは読み取り専用プロパティで代用できるけど、
読み取り専用プロパティはpublic readonlyで代用できない
339デフォルトの名無しさん:2013/10/11(金) 22:40:57.99
>>333
具体例
http://msdn.microsoft.com/ja-jp/library/system.drawing.rectangle.right.aspx

readonlyフィールドじゃどうやっても実現できない
340デフォルトの名無しさん:2013/10/11(金) 23:03:45.61
public type property { get; private set; } は便利だろ
VBじゃできないんだぜ
341デフォルトの名無しさん:2013/10/11(金) 23:09:18.19
ここまで言語でバラバラだと気にするのが面倒だから全部publicでok
342デフォルトの名無しさん:2013/10/11(金) 23:12:10.88
VBでカプセル化? ご冗談をw
343デフォルトの名無しさん:2013/10/11(金) 23:13:01.38
>>342
おまえが知ってるのはVBじゃない
344デフォルトの名無しさん:2013/10/11(金) 23:16:55.76
>>340
それはC#と同時に出来るようになってるw
345デフォルトの名無しさん:2013/10/11(金) 23:28:19.03
>>344
VBはわざわざこうしなきゃいけない
しかも書込と読込のアクセッサが異なる

Public Readonly Property [property] As type
 Get
  Return _property
 End Get
End Property
Private _property As type
346デフォルトの名無しさん:2013/10/11(金) 23:30:27.14
>>345
http://msdn.microsoft.com/ja-jp/library/vstudio/dd293589.aspx
ちなみにC++/CLIでも同じような表記ができて、
実はプロパティの定義に関してはC#が一番不便
347346:2013/10/11(金) 23:32:15.07
すまんReadOnly限定の話か
348デフォルトの名無しさん:2013/10/11(金) 23:33:20.89
VBは自動プロパティの初期化が出来るから我慢汁
public property XXX as string = "abc"
349デフォルトの名無しさん:2013/10/11(金) 23:40:29.50
VB.NET, C++/CLI: C#に比べて構文が簡潔で宣言時初期化が可能
C#: getとsetでアクセスレベルを変えられる
どっちのメリットが多いかというと微妙なところだなあ
VBはカプセル化?何それ?な使い方をされることが多いから、ほぼpublicフィールドと
変わらない扱いができてそれよりはマシな選択肢を用意するのは適切な判断なんだろうけど
350デフォルトの名無しさん:2013/10/11(金) 23:51:53.44
そんなに優位に立たないと気が済まないのか、君らは
351デフォルトの名無しさん:2013/10/12(土) 00:09:05.34
自動実装プロパティの制限に文句を垂れるよりは「フィールドのカプセル化」のショートカットキーを覚えたほうがはるかに生産的だぞ
352デフォルトの名無しさん:2013/10/12(土) 00:31:07.74
コボラーの発想だな
353デフォルトの名無しさん:2013/10/12(土) 21:11:57.09
C#でゲーム作るならXNAって奴がスタンダードなんですか?
354デフォルトの名無しさん:2013/10/12(土) 21:14:48.41
以前はそうでした
355デフォルトの名無しさん:2013/10/12(土) 21:17:40.92
XNAは終了(公式)
C#でやるなら迷わずUnityだ
今やUnityはゲーム製作のデファクトスタンダード
356デフォルトの名無しさん:2013/10/12(土) 21:24:16.54
などと今なおマカーはステマを続けており、
早急にも精神科の治療を要する状況である。
357デフォルトの名無しさん:2013/10/12(土) 22:05:01.12
XNAは今後サポートないって公式に宣言してるし
今の流行りはUnityだし間違いではないでしょ
358デフォルトの名無しさん:2013/10/12(土) 22:12:08.19
一応C#だしなあ
.NETではないとはいえ、C#がC++からゲーム製作言語の座を奪ったんだから大したもんだよ
359デフォルトの名無しさん:2013/10/12(土) 22:25:03.86
unityって趣味でゲーム作るなら最強環境だけど、実際に商品として作ろうと思ったら最悪だよな
ゲーム部分以外が作れねー
360デフォルトの名無しさん:2013/10/12(土) 22:37:35.92
平日:人生ゲーム業務
休日:アマチュア無線業務
361デフォルトの名無しさん:2013/10/12(土) 22:41:54.69
老人乙
362デフォルトの名無しさん:2013/10/12(土) 23:36:47.74
>今の流行りはUnityだし間違いではないでしょ

おまえの中ではな。
363デフォルトの名無しさん:2013/10/12(土) 23:37:25.59
>>362
今なにが流行ってるの?
364デフォルトの名無しさん:2013/10/12(土) 23:40:43.21
マカーなんでこんなところに。
365デフォルトの名無しさん:2013/10/12(土) 23:43:16.77
むしろ何か流行ってるの?
366デフォルトの名無しさん:2013/10/12(土) 23:45:58.54
sharpdx
367デフォルトの名無しさん:2013/10/12(土) 23:47:19.50
なんでUnityだとマカーなんだろう
普通にWindowsで使ってる人の方が多いだろ
デプロイもPC向けならほぼ100%Windows向けだろうし
368デフォルトの名無しさん:2013/10/12(土) 23:56:35.85
どうせ>70だろ。気にすんな
369デフォルトの名無しさん:2013/10/12(土) 23:57:55.84
激しく板違いだな。マカーはゲーム製作技術板に池よ。
370デフォルトの名無しさん:2013/10/12(土) 23:59:23.70
まさかマルチスレッド簡単君がアニメ好きのマカーだったとはな。
371デフォルトの名無しさん:2013/10/13(日) 00:06:49.72
.>>70はどんなネタにも無知なまま突っ込んでくるなww
372デフォルトの名無しさん:2013/10/13(日) 00:23:39.54
キチガイ荒らし >>70連呼がはじまりました。

みなさんそろそろ寝ましょうか。
373デフォルトの名無しさん:2013/10/13(日) 00:24:52.51
急にレスの流れが速くなると間違いなくマルチスレッド君がいるよな。

沸点低いから。
374デフォルトの名無しさん:2013/10/13(日) 00:27:13.09
他人を装って連投するなら文体変えた方がいいよ
375デフォルトの名無しさん:2013/10/13(日) 00:38:35.75
また >>70 連呼か。 完全に病気だね。
376デフォルトの名無しさん:2013/10/13(日) 01:44:39.71
70って2スレくらい前のじゃない?病気だね
377デフォルトの名無しさん:2013/10/13(日) 02:23:25.87
こういう奴は冗談抜きでストーカーと同じ。

ストーカーの特徴は他人から自分がどう見えるかを想像する能力が壊れてることと、
自分が他人から拒絶されることを受け入れることができないことだが、
そっくりそのまま彼(ら)にも当てはまる。

恐らくこのスレでこういう流れを面白いとか、あるいは誰かが(俺が)煽られてるとか
思ってる人は彼(ら)以外に一人もいないと思うんだけど、彼(ら)にはそれが理解できない。

まず間違いなく、自分と同じ感じ方がみんなに共有されてると思ってる。
ストーカーと同じようにね。
378デフォルトの名無しさん:2013/10/13(日) 02:34:06.19
C#, C♯, C#相談室 Part81
http://toro.2ch.net/test/read.cgi/tech/1381134494/

70 名前:デフォルトの名無しさん sage ▽1件 投稿日:2013/10/12(土) 23:16:33.38 0回目
そこはかとなく70の匂い

調子に乗って↑のような無様なレスを晒すことになる
379デフォルトの名無しさん:2013/10/13(日) 02:53:35.09
いやー、Ubuntuいいわー
お前らもLinux使ってみろよ
な?
380デフォルトの名無しさん:2013/10/13(日) 03:15:53.78
MonoじゃなくてVisualStudioで開発したい
381デフォルトの名無しさん:2013/10/13(日) 03:41:14.84
>日本製Monoの入手方法を知りたいですか?(Y/n)
382デフォルトの名無しさん:2013/10/13(日) 05:51:45.43
70連呼の馬鹿は面白いと思ってんのかな
383デフォルトの名無しさん:2013/10/13(日) 11:34:00.42
>>381
トンボのアレね
実はSEEDのOEMだったりするが
384デフォルトの名無しさん:2013/10/13(日) 11:57:37.24
>>383
俺は、AIR-INが一番だと思う。
385デフォルトの名無しさん:2013/10/13(日) 12:05:32.89
>>379
Ubuntu無料なこと以外はあんま好きじゃないな
386デフォルトの名無しさん:2013/10/13(日) 12:11:52.30
余計な手間はコストだからなあ
学生には理解できないだろうけど
387デフォルトの名無しさん:2013/10/13(日) 12:21:00.68
手間を楽しめるうちはいいよ
388デフォルトの名無しさん:2013/10/13(日) 12:37:47.43
Red Hat系以外のLinuxなんて都市伝説レベルでしか見ない
389デフォルトの名無しさん:2013/10/13(日) 12:52:15.59
centとdebian以外要らん
コミュニティの分散を止めろ
390デフォルトの名無しさん:2013/10/13(日) 13:29:44.77
public class A
{
 public void Test<T>() {}
}

というジェネリックメソッドがあるとして、
これを別のクラスから

A a = new A();
a.Test<this.GetType()>();

みたいな感じに型パラメータを動的に指定したいんだけどいい方法ありますか?
391デフォルトの名無しさん:2013/10/13(日) 13:32:32.83
それもうジェネリックにする意味ないよね
392デフォルトの名無しさん:2013/10/13(日) 13:39:28.15
thisの型に制約があるならそのスーパークラスなりインターフェース与えればいいし
そうでないならそもそも束縛する意味なし
393デフォルトの名無しさん:2013/10/13(日) 13:49:56.01
>>390
typeof(A).GetMethod("Test").MakeGenericMethod(this.GetType()).Invoke(a)
俺も意味ないと思うけど、メタプログラミングっぽいことをやってると稀に必要なこともないこともない
394デフォルトの名無しさん:2013/10/13(日) 14:03:27.70
thisがstructなら候補は1つしかないし、classなら動的にジェネリック型を構築するメリットがない気がする
395デフォルトの名無しさん:2013/10/13(日) 14:28:42.03
C#のジェネリックって継承やインターフェースの実装しなきゃメソッド呼び出しすらできないから不便だよね
C++のテンプレートみたいな仕様にした方が面白いのに
396デフォルトの名無しさん:2013/10/13(日) 14:30:01.27
ありがとうございます
設計が悪いみたいなのでまず見なおしてみます

>>393
reflectionってやつですかね
ちょっと強引な印象ですが最終手段として考えてみます
397デフォルトの名無しさん:2013/10/13(日) 19:19:25.92
>>395
メモリ食うしリフレクションもできないよ
アセンブリをまたがってインスタンスの受け渡しをするときにも問題出そう
398デフォルトの名無しさん:2013/10/13(日) 19:28:55.95
テンプレートは出来合いのものを使うときにもソースコードが必要だから無理
コンパイル済みのライブラリを一切使わないで常にソースから全部ビルドするならいいけど
そういうわけにはいかんだろ
もし.NETでやるとしたらアセンブリにソースコードを丸ごと埋め込むことになるね
399デフォルトの名無しさん:2013/10/13(日) 23:07:00.72
Formsアプリは死滅しちゃうの?
400デフォルトの名無しさん:2013/10/13(日) 23:26:25.62
VB6は生きている
あとは分かるな
401デフォルトの名無しさん:2013/10/13(日) 23:36:05.44
C#やめてVB6やれってことだな
402デフォルトの名無しさん:2013/10/14(月) 09:11:25.74
生きてると言ってもゾンビみたいなものだろ
403デフォルトの名無しさん:2013/10/14(月) 09:38:15.52
標準のコントロールだけで組めば良いシステムは幾らでもあるし
その範囲なら直感的なGUIであるFormsは優秀だ
Windowsが大きく変わるまでは現役だろうね
404デフォルトの名無しさん:2013/10/14(月) 10:17:44.58
UIはビジネス層とキッチリ分離してあればだけど、別になんでもいいだろ
その時代にあったアーキテクチャでUIを組めばいいし、必要ならUIだけ別のアーキテクチャに乗り換えればいい
UIに関してだけ言えば後ろを振り向いちゃいけないその場その場でしのぐべき
405デフォルトの名無しさん:2013/10/14(月) 11:30:17.58
Consoleアプリが死なないのに、Formsアプリが先に死ぬわけないだろ
406デフォルトの名無しさん:2013/10/14(月) 11:38:45.08
CUIは開発に欠かせないから無くなることはない
GUIはエンドユーザの都合で作ってるだけだから需要がなくなれば死滅する
407デフォルトの名無しさん:2013/10/14(月) 11:40:29.95
開発に欠かせない?
408710:2013/10/14(月) 11:42:29.14
>>405
さすがにそりゃ逆だろ
409デフォルトの名無しさん:2013/10/14(月) 11:44:57.10
WPFってまだ息すらしてないのに。
410デフォルトの名無しさん:2013/10/14(月) 11:48:38.99
あと二年以内に新規案件のuiはhtml5に置き換えられる
411デフォルトの名無しさん:2013/10/14(月) 12:13:43.37
おれも10年ぐらい前には同じようなこと思ってたよ。でもuiがhtmlに完全に置き換わることは当分ないだろ
412デフォルトの名無しさん:2013/10/14(月) 12:26:00.21
>>406
別にCUIなくても困らないが
413デフォルトの名無しさん:2013/10/14(月) 14:50:05.83
原理的にグラフィックを使用せざるを得ないブラウザや画像編集ソフトを除けば、
CUIとGUIをどちらも選べる状況ならCUIの方が使い勝手がいい
414デフォルトの名無しさん:2013/10/14(月) 14:55:07.58
マクロ機能があるならGUIでもいいかな
415デフォルトの名無しさん:2013/10/14(月) 16:08:41.04
今更CUI環境でソース書きたくないよ
416デフォルトの名無しさん:2013/10/14(月) 16:16:30.25
極端な奴だけどちらかに拘ってればいいんだよ大マヌケ
417デフォルトの名無しさん:2013/10/14(月) 17:04:49.37
マウスに触りたくないとか言っちゃうワガママユーザ向けにスクリプティング環境を用意しないとね
418デフォルトの名無しさん:2013/10/14(月) 17:34:11.20
HTML5の普及が始まりそうな気配も感じないよ
419デフォルトの名無しさん:2013/10/14(月) 17:48:28.28
Flashを代替するって息巻いてた割にスマホ用とPC用で住み分けただけだったな
俺は夢想家と違ってこれは予測してたよ
420デフォルトの名無しさん:2013/10/14(月) 17:51:59.74
ほーん。で?
421デフォルトの名無しさん:2013/10/14(月) 18:23:38.47
HTML5は船頭多くして船山に登るってパターンらしいね。
っていうか、最近の規格物っていつもこれだな。
規格なんかバザール方式みたいなノリでやってもうまくいくはずないっていい加減学習すりゃいいのに。

日本人は学習能力がなくて同じ失敗を何度も繰り返すって批判されるけど外人もたいがいだな。
どっかのブログか何かで規格をまとめる能力(だけ)は日本の家電メーカーの方が
上だったと書いてる人がいたけどそうかもしれん。
422デフォルトの名無しさん:2013/10/14(月) 18:33:40.72
空気を読み強いものには意見しないからね
そりゃ強いものが出した仕様がすんなり通るんだから
外からみたらまとめるのがうまいと錯覚してしまう
423デフォルトの名無しさん:2013/10/14(月) 18:39:04.49
javascriptみたいなゴミの中のゴミじゃなくてC#にしてくれれば使うのに
424デフォルトの名無しさん:2013/10/14(月) 19:11:15.58
(ヾノ・∀・`)頼んでない頼んでない
425デフォルトの名無しさん:2013/10/14(月) 19:44:00.25
char[]かStringBuilderからしか直接stringが作れないっていうのもアレだけど
StringBuilderにICollection<char>とかをInsertするのも無理とかなんかおかしくない?

stringはメモリ使いまくるからパフォーマンス上の問題になりやすいのに融通が効かなさ過ぎ
パフォーマンスを求めるとstringやstringbuilderやその他全てのstringに依存したフレームワークを捨てて
自前文字列型を使った一大フレームワークを作るハメになる
426デフォルトの名無しさん:2013/10/14(月) 19:49:07.22
うんMSに要望すれば
うん作れば

ふーん。で?
427デフォルトの名無しさん:2013/10/14(月) 19:53:15.16
賛同して欲しいだけのネタだろうに何いちいち突っ込んでんの
カスかお前
428デフォルトの名無しさん:2013/10/14(月) 20:02:30.77
stringを作業データとして使っちゃってるかわいそうな子かな?
429デフォルトの名無しさん:2013/10/14(月) 20:07:17.06
>>426
多分「はい、シルバーライト」って渡されると思うわ
430デフォルトの名無しさん:2013/10/14(月) 20:07:57.14
ペンライトの方が役に立ちそうだなー(棒
431デフォルトの名無しさん:2013/10/14(月) 21:02:59.52
BYTE配列…
432デフォルトの名無しさん:2013/10/14(月) 21:19:09.57
>>425
そもそもcharのコレクションなんて使うか普通?w
433デフォルトの名無しさん:2013/10/14(月) 21:47:44.48
std::stringでも使ってろ
434デフォルトの名無しさん:2013/10/14(月) 21:48:42.61
CLIなら使えるんだっけ
435デフォルトの名無しさん:2013/10/15(火) 05:22:41.89
2012EEインスコした
デスクトップアプリを開発しようとした

ウィンドウズフォーム
WPF

どっち選べばいい?
436デフォルトの名無しさん:2013/10/15(火) 06:18:47.26
すいません、C#でWebサイトの掲示板にPOSTデータを送信して、
戻り値(書き込みました、みたいな移動先ページのhtmlソース?)をreq.GetResponse()で受け取ろうとしてるのですが、
書き込みは出来ても受け取りができません。

次にコードを書くのでどこがおかしいか見てアドバイスいただけないでしょうか、よろしくおねがいします。
437続き:2013/10/15(火) 06:21:47.51
try{
System.Net.ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();
HttpWebRequest req = WebRequest.Create("http://hoge.com/index.cgi") as HttpWebRequest;
Encoding enc = Encoding.UTF8;
string param = "";
Hashtable ht = new Hashtable();
ht["text"] = "hoge";
ht["text2"] = "hogehoge";
foreach (string k in ht.Keys) {
param += String.Format("{0}={1}&", k, ht[k]);
}
byte[] postDataBytes = Encoding.ASCII.GetBytes(param);

req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = postDataBytes.Length;
Stream reqStream = req.GetRequestStream();
reqStream.Write(postDataBytes, 0, postDataBytes.Length);
reqStream.Close();

using (WebResponse res = req.GetResponse())
{
Stream st = res.GetResponseStream();
StreamReader sr = new StreamReader(st, enc);
Debug.Log(sr.ReadToEnd());
st.Close();
sr.Close();
}
Debug.Log("posted");
}catch (WebException ex){
Debug.Log("ERROR");
}
438デフォルトの名無しさん:2013/10/15(火) 06:35:45.50
AutoRedirect
439デフォルトの名無しさん:2013/10/15(火) 06:42:05.42
UrlEncode
440デフォルトの名無しさん:2013/10/15(火) 06:44:34.70
>>438

req.AllowAutoRedirect = true;

みたいなコードを書いておけばリダイレクト先のページ(書き込みました)のソースを取得出来るんでしょうか?

というか今はリダイレクト前?のページも何も取得できずに、Debug.Log("ERROR")だけが返ってくるのですが…
441デフォルトの名無しさん:2013/10/15(火) 06:44:42.32
>>435
クラスライブラリで機能だけ作る
あとは適当に試して自分に会う奴を使う
442デフォルトの名無しさん:2013/10/15(火) 06:47:35.63
>>439
あ、抜けてましたけど
ht["text"] = "hoge";
ht["text2"] = "hogehoge";
にはUrlEncodeかけてます、すいません

なので書き込みは問題なく行えてます

すみませんがちょっとの間眠らせていただきます
443デフォルトの名無しさん:2013/10/15(火) 07:02:07.11
>>441
その機能がうまくいっているかを見るためには何を使えばいいですか?
CLIですか?
444デフォルトの名無しさん:2013/10/15(火) 09:05:48.27
> というか今はリダイレクト前?のページも何も取得できずに、Debug.Log("ERROR")だけが返ってくるのですが…
そこはERRORって文字列を出すところじゃない
ex.ToString()を出すところだ
というかステップ実行して例外の詳細を調べろ
445デフォルトの名無しさん:2013/10/15(火) 16:16:26.31
WPFはいまだに理解できないから使わないほうがいいと思うわ
446デフォルトの名無しさん:2013/10/15(火) 16:26:09.91
(自分が)WPFをいまだに理解できないから(自分は)使わないほうがいいと思うわ
447デフォルトの名無しさん:2013/10/15(火) 16:29:27.55
WPFはかにかく客の評判が悪い。
客はUIのかっこよさは求めてない。
448デフォルトの名無しさん:2013/10/15(火) 16:33:00.01
どんなソフトでどんな客層かなどによるだろ。いつものことだがバカだな
449デフォルトの名無しさん:2013/10/15(火) 16:35:47.16
>>448
その中学生みたいな反論されてもね。自分で統計とってみ。
450デフォルトの名無しさん:2013/10/15(火) 16:39:21.20
Ubuntuはシェアが激減したし、Win8は糞呼ばわりでWin7から移行する馬鹿もいない。

どんな客層向けに開発したUIなのか。実務をしないマカーだね。
451デフォルトの名無しさん:2013/10/15(火) 16:42:44.31
>>449
完全にブーメランじゃねーか
452デフォルトの名無しさん:2013/10/15(火) 16:44:49.35
明らかに統計が出てバルマーも失敗だと認めて退任するし、
UI責任者は責任を取って退職したんだから、今更WPF押ししても仕方ないじゃない。
453デフォルトの名無しさん:2013/10/15(火) 16:46:04.58
見慣れないUIの時点で普通は警戒されるからな
使い勝手も変わるし

その上プログラミングしてても意味不明だし
誰得感満載だなWPF
454デフォルトの名無しさん:2013/10/15(火) 16:51:00.60
Formsでいい
455デフォルトの名無しさん:2013/10/15(火) 16:56:15.47
むしろForms最高。
456デフォルトの名無しさん:2013/10/15(火) 17:02:34.60
>>453
xmlでUI作れるってところだけでも価値はあると思うけどな
457デフォルトの名無しさん:2013/10/15(火) 17:04:14.03
XML自体XHTMLで混乱を巻き起こしてHTML5で切り捨てられるような
人が読み書きするのに適してない形式じゃない
458デフォルトの名無しさん:2013/10/15(火) 17:48:41.44
UIをHTMLやXMLで書けるっていうのはそれだけでメリット大きい
老害なみの頭の硬さじゃデメリットしか見えないだろうがwww
459デフォルトの名無しさん:2013/10/15(火) 17:50:30.71
まあ書けないよりは書けた方がいいだろうけど
それしか使えないのは何だかなあ、って感じ
460デフォルトの名無しさん:2013/10/15(火) 17:50:34.93
バージョン管理で差分が取れるのは大きいな
461デフォルトの名無しさん:2013/10/15(火) 17:57:30.00
htmlはともかく、xamlは別に必須じゃないが…。
462デフォルトの名無しさん:2013/10/15(火) 18:12:53.37
xmlで書けるのはいいがxamlはコンパイル必要な時点でゴミ
463デフォルトの名無しさん:2013/10/15(火) 18:13:44.34
xmlが糞遅いんだから仕方がない。
464デフォルトの名無しさん:2013/10/15(火) 18:48:40.02
オーナードローに比べたらコントロールテンプレートで弄れるのは楽になったよな
サイズの計算などやらなくていいし
465デフォルトの名無しさん:2013/10/15(火) 19:02:59.39
>>457
HTML5でXHTMLが切り捨てられるとか何を言ってるんだ君は。
http://www.atmarkit.co.jp/fwcr/design/benkyo/html5appli03/01.jpg

あとXHTMLが特別に混乱を引き起こしたことはないが。
ブラウザ間の互換性問題のことを言ってるならJavaScriptでも起きてるわけでXHTML特有の現象ではない。
466デフォルトの名無しさん:2013/10/15(火) 19:03:09.02
つまりhta最強伝説
467デフォルトの名無しさん:2013/10/15(火) 19:45:27.66
インターフェイスに互換性を求めるクズは惨殺されてギリギリ生き残ればいい
一生苦しんでしまえばいいんだ
468デフォルトの名無しさん:2013/10/15(火) 20:08:41.28
メトロUI信者乙。
469デフォルトの名無しさん:2013/10/15(火) 21:43:46.85
インターフェースって互換性が最も重要じゃないの?
CUIのプログラムでバージョンごとにコマンドの仕様がコロコロ変わったら嫌だろ
470デフォルトの名無しさん:2013/10/15(火) 21:53:08.01
win32apiがバージョン毎にコロコロ変わったのは嫌だったろ
471デフォルトの名無しさん:2013/10/15(火) 22:01:58.49
ケースバイケースだな
互換性に拘るばかりに要らない制限できることあるし
472デフォルトの名無しさん:2013/10/15(火) 22:07:36.35
いやMSの後方互換性重視は基地外レベルだろ
WinAPIとか何十年前からだよ
473デフォルトの名無しさん:2013/10/15(火) 23:04:33.17
ゲイツが説いたのはUIの統一性な。
ゲイツが退いてからのUIは右往左往しすぎ。
474デフォルトの名無しさん:2013/10/15(火) 23:41:57.69
FormsとWPFだとどっち使う人が多いの?
多いほうが情報多そうだから多い方にする
475デフォルトの名無しさん:2013/10/15(火) 23:43:32.08
ドウ考えてもform
476デフォルトの名無しさん:2013/10/15(火) 23:56:05.80
今からやるんならASP.NET MVCにしとけ
477デフォルトの名無しさん:2013/10/16(水) 00:01:30.71
WEBなんてやらんのだが
478デフォルトの名無しさん:2013/10/16(水) 00:02:52.38
じゃあFormsで
479デフォルトの名無しさん:2013/10/16(水) 00:11:52.65
Formsだな
480デフォルトの名無しさん:2013/10/16(水) 00:16:07.18
でもWPFでオシャレなGUIにしたい気持ちもあるのよね
あのFORMsのメニュー欄のポッコリ感とか
ボタンのポッコリ感がめちゃくちゃダサいし

でも、マークアップとかバインディングとか分けわからなすぎるし
どうせ作るならオシャレにしたいじゃん?
481デフォルトの名無しさん:2013/10/16(水) 00:26:39.63
お前は何を言っているんだ
482デフォルトの名無しさん:2013/10/16(水) 00:31:36.08
そうして独自UIの糞アプリが出来上がりましたとさ
483デフォルトの名無しさん:2013/10/16(水) 00:34:47.78
WPFはOSに合わせたテーマにもできるぞ
Win8ならWinFormsでもポッコリしないが、WPF使えばWin7でもWin8風の見た目にできる
484デフォルトの名無しさん:2013/10/16(水) 01:33:11.06
ゆーじんがWPFはWindows7のデザインにあってないとか言い出した
485デフォルトの名無しさん:2013/10/16(水) 01:38:02.83
校内写生なつかしいな
486デフォルトの名無しさん:2013/10/16(水) 01:46:50.79
Form使うくらいならMFCでネイティブでいけよ

オシャレなGUIにしたいから、もっさり.NETでも仕方ないか・・・
って感じだろ
487デフォルトの名無しさん:2013/10/16(水) 01:49:09.55
その発想、どっちも使えなさそうだなw
488デフォルトの名無しさん:2013/10/16(水) 07:06:42.65
いい加減GDIはやめようぜ
489デフォルトの名無しさん:2013/10/16(水) 07:27:48.41
CPUとSSDを同時に新調したんだけど
IDEが一瞬で起動される
どっちのおかげかはわからんがw
490デフォルトの名無しさん:2013/10/16(水) 07:42:31.53
SSDだろうな。
SSDのノート買ったら、Win7が電源ONから10秒でログイン画面になったのには驚いた。
491デフォルトの名無しさん:2013/10/16(水) 12:43:45.21
IDEなんて起動に何分かかったっていいだろ。一ヶ月に何度も落とすことないもんだし
492デフォルトの名無しさん:2013/10/16(水) 13:20:18.60
毎日落とさないのか
493デフォルトの名無しさん:2013/10/17(木) 02:50:19.73
win7のエクスプローラーのように動画をプレビューしたいんだけど
簡単にできますか?
494デフォルトの名無しさん:2013/10/17(木) 09:55:04.80
静止画でいいならシェルから取れるよ。
IThumbnailCache
495493:2013/10/17(木) 18:48:01.66
>>494
キャッシュじゃなくて新規取得したい
496デフォルトの名無しさん:2013/10/17(木) 18:50:11.11
裏で動画開いて使いたい場所のキャプチャ撮って使え
497デフォルトの名無しさん:2013/10/17(木) 19:05:51.46
新規ならそのまま再生するだけでいいだろ。
498デフォルトの名無しさん:2013/10/17(木) 20:00:52.38
http://www.find-job.net/startup/architecture-2013
C#ってゲームばっかりですねえ・・・
おもちゃ言語がおもちゃに使われるってのは皮肉ですな
499デフォルトの名無しさん:2013/10/17(木) 20:05:08.76
C#の主舞台は業務システムですよ
C#に限らずまともな言語は全部そうだけどね
500デフォルトの名無しさん:2013/10/17(木) 20:17:03.26
ふーん具体的には?
501デフォルトの名無しさん:2013/10/17(木) 20:21:30.27
荒れる流れの兆候
502デフォルトの名無しさん:2013/10/17(木) 20:21:51.21
企業の中で動いてるやつだよ
お前も病院とか図書館とか行ったら見覚えのないソフトがPC画面に写ってるのを見たことあるだろ?
あれだよ
503デフォルトの名無しさん:2013/10/17(木) 20:23:26.48
業務でC#?

ありえない。
504デフォルトの名無しさん:2013/10/17(木) 20:24:02.16
プロダクト名とかサービス名で挙げてくんない?
資料に書いて一発で分かる奴にしてくれ
505デフォルトの名無しさん:2013/10/17(木) 20:27:04.45
計測器のクライアントソフトとかか?
506デフォルトの名無しさん:2013/10/17(木) 20:27:33.17
>>503
www
507デフォルトの名無しさん:2013/10/17(木) 20:28:02.88
煽り段階に突入しつつある
508デフォルトの名無しさん:2013/10/17(木) 20:30:20.07
C#ってもともと業務向けの言語だろ
業務用じゃなかったらデーターベースとの連携を強化するようなことはしないだろ
509デフォルトの名無しさん:2013/10/17(木) 20:31:05.73
何用とかねえから
森羅万象万物の記述に適してる言語
510デフォルトの名無しさん:2013/10/17(木) 20:31:10.05
こんなフワフワとしてるから笑われるんだな
511デフォルトの名無しさん:2013/10/17(木) 20:31:11.15
512デフォルトの名無しさん:2013/10/17(木) 20:38:36.40
StackOverflowはC#/ASP.NETらしいね
513デフォルトの名無しさん:2013/10/17(木) 20:39:26.75
そうそうそういうので頼むよ
で、主舞台まだ?
514デフォルトの名無しさん:2013/10/17(木) 20:42:11.96
StackOverflow産のDapperにはいつもお世話になってます
515デフォルトの名無しさん:2013/10/17(木) 20:52:58.53
仕事したこと無い奴がいるみたいだなw
516デフォルトの名無しさん:2013/10/17(木) 20:59:27.98
へえそれは大変だ
ところで、主舞台まだですかね?
517デフォルトの名無しさん:2013/10/17(木) 21:09:19.66
うぜーー
518デフォルトの名無しさん:2013/10/17(木) 21:18:26.53
ほとんどの業務ソフトよりゲームの方が技術力を必要とする現実
519デフォルトの名無しさん:2013/10/17(木) 23:52:59.83
大手運送会社の端末、ATM、病院なんかはC#だな
C++より信頼できるのは確かだな
520デフォルトの名無しさん:2013/10/17(木) 23:54:29.05
vb.netの間違いだろ。
521デフォルトの名無しさん:2013/10/18(金) 00:07:44.75
>>509
WEBには弱いけどねー
522デフォルトの名無しさん:2013/10/18(金) 00:17:49.05
LLしか使えない低能には敷居が高いだけ
523デフォルトの名無しさん:2013/10/18(金) 00:27:17.36
C#ってLL並みに学習しやすくね
初めて触った時なんやこの使いやすさと思ったで
524デフォルトの名無しさん:2013/10/18(金) 01:01:39.35
LLの中だと設計思想がPythonに近い感じだな
日本ではあまり人気が高くなかったり、超汎用的だけどWebだと今ひとつパッとしないあたりも
525デフォルトの名無しさん:2013/10/18(金) 01:11:14.22
ASP.NETが気軽にLinuxに入れられるようになったら一般に普及しそうだがね
ホスティングの選択肢がないからなー
526デフォルトの名無しさん:2013/10/18(金) 01:25:43.43
linuxは一般に普及しまくってんじゃん
女子高生でもガシガシいじってるし

俺はiphoneだが・・・(´・ω・`)ショボーン
527デフォルトの名無しさん:2013/10/18(金) 08:37:58.92
>>518
ゲームに技術力ってどの辺が?
ライブラリを作ってる側は技術力はいるだろうが、
ライブラリを使うだけの側に技術力も糞もないと思うがな
528デフォルトの名無しさん:2013/10/18(金) 11:43:14.92
基地外はスルーしとけよw
529デフォルトの名無しさん:2013/10/18(金) 12:18:42.09
100レスくらいの言い争いになると思ったのに意外と伸びないな
530デフォルトの名無しさん:2013/10/18(金) 12:41:36.39
HTML5はダメ
Flashは開発中止となれば
これからはSilverlightの時代だよな
531デフォルトの名無しさん:2013/10/18(金) 14:05:05.63
VS2013で何が変わったん?
532デフォルトの名無しさん:2013/10/18(金) 14:12:25.14
だって煽っている奴が無知なんだから
荒れようがないww
533デフォルトの名無しさん:2013/10/18(金) 15:20:53.18
>>531
ソリューションエクスプローラのアイコンが変わっているな
534デフォルトの名無しさん:2013/10/18(金) 16:06:26.24
VS2012オワタ
535デフォルトの名無しさん:2013/10/18(金) 16:35:49.05
いい加減デバッガからイベントハンドラーを呼び出せるようにして欲しい
536デフォルトの名無しさん:2013/10/18(金) 16:49:29.13
VS2013はWPFもWinFormsも変化なし?
537デフォルトの名無しさん:2013/10/18(金) 17:10:51.40
64 ビットのエディット コンティニュのサポートって書いてあるな
538デフォルトの名無しさん:2013/10/18(金) 21:46:28.93
>>525
ASP.NET MVCの方は公式のがオープンソースだからMonoで使えるよ
MVCじゃない方はどうせイントラが主だからLinuxのニーズはそれほど大きくないのでは
539デフォルトの名無しさん:2013/10/18(金) 22:46:43.91
>>538
やー、yum install aspnetとかで簡単に入れられないと流行らないかなと
540デフォルトの名無しさん:2013/10/19(土) 20:35:46.52
>>476
その理由は何なんでしょ
頑張ればページ更新を軽くできるから?
PHPとかと考え方が同じだから?
541デフォルトの名無しさん:2013/10/19(土) 20:40:36.33
>>540
476氏じゃないけどポストバック方式はオワコンというか
最近のAjax系のテクノロジーと相性が悪い。
出た当時はVB6のポトペタでWebアプリが出来上がるから
優れたテクノロジーだったけど
542デフォルトの名無しさん:2013/10/19(土) 21:10:11.95
>>541
ありがとん、次の作業からMVCでいくわ
543デフォルトの名無しさん:2013/10/20(日) 13:13:22.03
経験をつむために、練習で
データベースを使ったWindowsフォームアプリケーション
を作りたいのですが、ネタが思いつきません。
今までに作ったのは、スケジュール管理と家計簿です。
どなたかアイデアください。
544デフォルトの名無しさん:2013/10/20(日) 13:18:18.47
そんなの窓の杜に腐るほどあんじゃん

それらに勝つのは難しいから購入したほうが早いぞ

しかも、ネイティブなんでC#みたいにもっさり感が無いw
545デフォルトの名無しさん:2013/10/20(日) 13:25:16.07
経験、練習のためにって書いてるのに、勝つって何だよ
546デフォルトの名無しさん:2013/10/20(日) 13:27:31.78
DB使うソフト(アイデア)なんて窓の杜に腐るほどあるじゃん
ってことかと思って、確かにそうだよな、なんて思ってたらアホなこと言ってるだけだった
547理解力ないってかわいそう...:2013/10/20(日) 13:46:43.04
練習と書いてあるのに窓の杜とか、アホはどこにでもいるんだな。

>>543
スケジュール管理と家計簿できてるなら、簡単な DB 処理はできてるんだよね。
個人だと、住所録とか蔵書の管理とかかな。
548デフォルトの名無しさん:2013/10/20(日) 14:20:31.07
日本語ネイティブじゃねえんだろ
察してやれ
549デフォルトの名無しさん:2013/10/20(日) 14:27:58.35
成程
550デフォルトの名無しさん:2013/10/20(日) 14:42:22.39
MSは.NETを推しているようだが
なぜにoffice等のMSソフトは未だにネイティブで書かれているのですか?
551543:2013/10/20(日) 14:49:16.28
>>547
アイデアありがとうございます。
他の方もお願いします。
552デフォルトの名無しさん:2013/10/20(日) 15:00:02.06
やはりどこか違和感のある言い回しだな
真っ当な教育は受けていないのだろう
553デフォルトの名無しさん:2013/10/20(日) 15:00:25.55
>>550
高速化だろ
Visual Studio本体はネイティブだがヘルプビュワーはマネージだ
554デフォルトの名無しさん:2013/10/20(日) 15:01:48.22
マネージは遅いってこと???
555デフォルトの名無しさん:2013/10/20(日) 15:11:31.92
出来る奴のネイティブ>>出来る奴のマネージ>>>>>出来ない奴のネイティブ≒出来ない奴のマネージ
俺も含めてほとんどは「出来ない奴」側だから、マネージだろうがネイティブだろうが速度は変わらん
556デフォルトの名無しさん:2013/10/20(日) 15:15:35.02
>>554
遅くない訳が無いじゃん
そんなことも分からないの?
センスないね、君
557デフォルトの名無しさん:2013/10/20(日) 15:18:09.13
>>551
定期的に株価取りに行って溜めたデータでチャート書いたりするとか
558デフォルトの名無しさん:2013/10/20(日) 15:23:06.51
これは伸びる・・・か?
559デフォルトの名無しさん:2013/10/20(日) 15:25:30.01
出来るマネージってアンセーフは含むの?API使いまくり?
560デフォルトの名無しさん:2013/10/20(日) 15:27:12.98
// 初期化
int div = 3;
int[] array = new int[10000000];
Random random = new Random();
for (int i = 0; i < array.Length; i++) { array[i] = random.Next(); }

{ @
int[] ct_mods = new int[div];
for (int i = 0; i < array.Length; i++) {
ct_mods[array[i] % div]++;
}
}

{ A
int[] ct_mods = new int[div];
foreach (var x in array) {
ct_mods[x % div]++;
}
}

@、Aのように中括弧をこんな感じで使うことってあるんでしょうか?
またこの場合の中括弧は無視されるということでしょうか?
調べようと思ってもどういったキーワードで調べればいいのかわからなかったので質問しました
561デフォルトの名無しさん:2013/10/20(日) 15:29:14.33
もちろんあるわよ
562デフォルトの名無しさん:2013/10/20(日) 15:51:09.02
窓の社のような万人向けのソフトほど使わない機能が多いし
必ず不満は出てくるでしょ
いいところだけ盗んで自分に合ったツール作ればいいんだよ
でも公開はしないようにね
563デフォルトの名無しさん:2013/10/20(日) 15:57:11.83
>>556
なるほど、>>550を考慮すると
.NETはMS公認でドン臭いアプリケーションしか書けないってことねw

そりゃ、CADやCGで使えないのも無理は無いw
564理解力ないってかわいそう...:2013/10/20(日) 16:13:50.41
>>563
> .NETはMS公認でドン臭いアプリケーションしか書けないってことねw

はい、そうです。









君にはね
565デフォルトの名無しさん:2013/10/20(日) 16:17:59.67
言っちゃなんだけどいちいちそんなの相手にする君もかなり可哀想なお方だと思うよ。
馬鹿じゃないの
566デフォルトの名無しさん:2013/10/20(日) 16:23:49.25
はいはい一歩引いた視点で書き込む俺カッケーですね
言っちゃなんだけど、なんて予防線張ってるところがまた臭い
なんなら初めから書くな馬鹿が
567デフォルトの名無しさん:2013/10/20(日) 16:26:50.18
もういいから死ねよ
って書くと殺してみろって言い出すだろうから住所書け
殺してやる
568デフォルトの名無しさん:2013/10/20(日) 16:31:08.87
沸点低すぎwwwww
569デフォルトの名無しさん:2013/10/20(日) 16:40:51.56
>>543
ソシャゲ
なかなか勉強になるよ
570デフォルトの名無しさん:2013/10/20(日) 16:43:11.95
釣り客←センス君

理解力君

何なら君

カッケー君

どこまで伸びますかね
571デフォルトの名無しさん:2013/10/20(日) 16:50:35.47
幼稚な言語にお似合いなユーザーの皆様ですね。
世間に出てこないでね。
572デフォルトの名無しさん:2013/10/20(日) 18:37:49.81
>>560
>中括弧をこんな感じで使うことってあるんでしょうか

同名の変数を使うためならあまりすべきではないね
キーワードとしてはスコープ

switch文内で各caseで使い捨て変数がかぶるとめんどくさいので使っちゃうときはあるけど
573デフォルトの名無しさん:2013/10/20(日) 18:49:11.16
初心者が勘違いすると可哀想だから一応突っ込んでおくけど、
そもそもC系の言語でブロック(つまり{...})の使い方にあんな感じもこんな感じもありませんw

質問者は恐らく、BASICみたいな言語のノリでifやfor等のキーワードの後に
ぶら下がってる{...}を構文の一部だと思い込んでるんだと思うが、それは勘違い。
574デフォルトの名無しさん:2013/10/20(日) 21:35:20.20
>>560
変数のスコープが制限される
575デフォルトの名無しさん:2013/10/20(日) 21:44:14.68
ブロックの先頭じゃないと変数宣言できない古い言語ならともかく
C#ではあまりやらないかな スコープの制限って意味でも
576デフォルトの名無しさん:2013/10/20(日) 21:47:00.86
おれは変数使ってる範囲が目でわかるようにカッコ使ってるな
577デフォルトの名無しさん:2013/10/20(日) 21:55:06.29
書き捨てするようなプログラムの場合はたまに使うかな
一定範囲コピペして繰り返すような場合に。
まともに書く場合は関数にして分割するけどね
578デフォルトの名無しさん:2013/10/20(日) 22:16:01.84
みんなどんなファイラ使っているの?
プログラマが使うファイラがしりたい

win7のエクスプローラはxpよりはマシになったけどまだ無駄が多いし
移動繰り返したりするときに面倒くさくなる
で、最近あふwというのを知って気に入っているんだけど
579デフォルトの名無しさん:2013/10/20(日) 22:21:21.62
本職だと変に環境弄れないからエクスプローラそのまんまでしょ
580デフォルトの名無しさん:2013/10/20(日) 22:22:03.09
会社のWin7マシンはもうエクスプローラで事足りてる 言うほどファイル操作しないし
私用マシンは主にランチャ目当てでまめFile
581デフォルトの名無しさん:2013/10/20(日) 22:25:58.65
バージョン管理するとファイル操作も気軽にやれなくなるしな
決まりきった操作を繰り返すなら自動化するし
582デフォルトの名無しさん:2013/10/20(日) 22:25:59.14
いろいろ使ったけどUltraExplorerが最強だったね。
とっくに開発者トンズラしちゃったけど

しかし、Vista以降のエクスプローラの、田ミ + Eで起動した直後にフォルダツリーに
入力フォーカスが当たってないふざけた仕様、いい加減改善しないかね。

MSとGoogleは何考えてるのか理解に苦しむ改悪が多すぎる。
583デフォルトの名無しさん:2013/10/20(日) 22:26:39.17
糞ファイラにファイル壊されてからはエクスプローラー一筋
584デフォルトの名無しさん:2013/10/20(日) 22:33:52.30
純正が安心だからエクスプローラそのまんま
585デフォルトの名無しさん:2013/10/20(日) 22:35:57.34
モニタの一つは全部開いたフォルダで埋めてるからそもそも移動しない
586デフォルトの名無しさん:2013/10/20(日) 22:49:35.54
エクスプローラとxcopy派
587デフォルトの名無しさん:2013/10/20(日) 22:50:25.66
Cloverのお気に入りは便利だったけど若干不安定

そういやいつの間にかプログラミング.NET Framework新しくなってたな
高い。。。
588デフォルトの名無しさん:2013/10/21(月) 01:18:30.19
お、いい話聞いた
今年の図書購入費はこれとnginx本にしよう
589デフォルトの名無しさん:2013/10/21(月) 01:27:26.02
本なんて金の無駄だろ
590デフォルトの名無しさん:2013/10/21(月) 03:58:16.91
static void Main(string[] args) {
using (var sw = new StreamWriter(@"D:\hoge.txt", Encoding.Default)) {
/* hogefuga */
}
}

ってコードを書いたら
'System.IO.StreamWriter.StreamWriter(string, bool)' に最も適しているオーバーロード メソッドには無効な引数がいくつか含まれています。
とか言われたんだけどなんでよ
591デフォルトの名無しさん:2013/10/21(月) 04:29:33.75
訳すと「Encoding.Defaultがboolじゃねーぞ。氏ね」
592デフォルトの名無しさん:2013/10/21(月) 05:06:13.81
同じ内容でもネットより紙面で見たほうが頭に入りやすい
593デフォルトの名無しさん:2013/10/21(月) 05:17:25.72
引数のStringとStreamを間違えてるに一票
594デフォルトの名無しさん:2013/10/21(月) 05:49:36.50
if(typeof( Encoding.Default)==bool)) return;
595デフォルトの名無しさん:2013/10/21(月) 06:45:05.35
>>593でFAだろ
>>591なら池沼レベル
596デフォルトの名無しさん:2013/10/21(月) 14:12:49.98
(string, Encoding)をとるコンストラクタがないんだろう
エンコーディングがデフォルトなら(string)だけでいいんじゃねえの
597デフォルトの名無しさん:2013/10/21(月) 21:24:25.45
GetType()が無いオブジェクトでPropInfoが欲しいのですがどうすればいいですか
動的に決まるのでtypeof()も使えません
598デフォルトの名無しさん:2013/10/21(月) 21:26:23.87
インテリセンスに出てこないだけで普通に使えました
ありがとうございました
599デフォルトの名無しさん:2013/10/21(月) 21:27:01.86
dynamicに使おうとしてるの?
600デフォルトの名無しさん:2013/10/21(月) 21:42:32.49
いえ DbContext です
何で表示されないのかは知りません
601デフォルトの名無しさん:2013/10/21(月) 23:40:50.83
坊やだからさ
602デフォルトの名無しさん:2013/10/21(月) 23:49:21.36
charさんちーっす
603デフォルトの名無しさん:2013/10/22(火) 06:35:59.51
あるスレで神扱いされている人のツールの機能を包括して機能アップしたものを
そのスレに投下して邪魔するのが楽しすぎるwww
大抵そういうことしているのは学生で、しょぼいツールだから余裕で勝てるwww
604デフォルトの名無しさん:2013/10/22(火) 06:42:34.90
ニートお疲れ様
605デフォルトの名無しさん:2013/10/22(火) 07:55:51.17
>>602
邦楽ギターの神様は関係ないだろ
606デフォルトの名無しさん:2013/10/22(火) 10:08:54.17
気絶するほど悩ましいぜ
607デフォルトの名無しさん:2013/10/22(火) 22:41:35.78
>>603 具体的にドコのスレ?
608デフォルトの名無しさん:2013/10/22(火) 22:54:35.67
脳内スレ
609デフォルトの名無しさん:2013/10/23(水) 00:27:56.31
知りすぎると死ぬぞ
610デフォルトの名無しさん:2013/10/23(水) 06:33:06.14
愛されてばかりいると
611デフォルトの名無しさん:2013/10/24(木) 00:23:30.87
vs2013 RTW落としたけど、標準で付いている黒のテーマいいね
他のソフトも全部黒を基調にしてほしいな
なんで背景白なんだよ
612デフォルトの名無しさん:2013/10/24(木) 00:32:36.47
2012からは淡色で使うのが辛い
てか無理
カーソル行が見づらいし線が見づらいし眩しいし
613デフォルトの名無しさん:2013/10/24(木) 00:33:01.70
確かにVSの黒いテーマは神
いろんなIDEやエディタを触ってきたけど、
それら全てのプリセットの配色の中でトップの出来だわ
614デフォルトの名無しさん:2013/10/24(木) 00:42:00.30
>>611
だから、黒(というか濃色)の背景は目に悪いから。
伊達や酔狂で白背景がデフォになってるわけじゃないんだよ。
615デフォルトの名無しさん:2013/10/24(木) 00:43:37.23
久々にこの話題か。目に悪いソースは?w
616デフォルトの名無しさん:2013/10/24(木) 00:46:12.94
VisualStudioスレでやれよ
それとも頭が病気か?治療が必要か?
617デフォルトの名無しさん:2013/10/24(木) 00:59:17.58
極端に言えば、真っ暗闇からいきなり太陽を直視したようなもんだな
暗闇だと瞳孔は広がり光を多く吸収しようとする
そんなときに明るいものをいきなり見る(別のソフトや画面に切り替える)などしたらどうか
網膜に傷をつけてしまうおそれがある
いきなりはならないがその蓄積がやがて黒斑として現れるだろう
618デフォルトの名無しさん:2013/10/24(木) 01:00:59.77
宗教でもやってんのか
619デフォルトの名無しさん:2013/10/24(木) 01:16:41.97
直感的には黒背景も白背景も目に悪そうだけどそれをきちんと証明してるのは見つからないな
620デフォルトの名無しさん:2013/10/24(木) 01:17:56.90
黒のほうが目が疲れないなんてのはIT土方なら誰でも知ってるだろ。実体験で。
621デフォルトの名無しさん:2013/10/24(木) 01:24:24.47
黒の方が見やすい
622デフォルトの名無しさん:2013/10/24(木) 01:28:44.99
熟練した秀丸ユーザーはもちろん灰色背景に黒文字だよな
623デフォルトの名無しさん:2013/10/24(木) 01:28:58.99
x 実体験
o 大量人体実験
624デフォルトの名無しさん:2013/10/24(木) 01:30:28.60
目が疲れる=目に悪いの?
625デフォルトの名無しさん:2013/10/24(木) 01:37:09.35
黒背景に白文字は疲れるわ
626デフォルトの名無しさん:2013/10/24(木) 01:48:55.26
映画に出てくるハッカーもみんな黒背景。
627デフォルトの名無しさん:2013/10/24(木) 01:51:03.90
実体験()ばらばらワロタ
628デフォルトの名無しさん:2013/10/24(木) 02:23:38.96
書類も書籍も背景白だけど目は疲れないな
明るいところなら背景白でも目は疲れない
暗がりで背景白にするから疲れるんだよ
瞳孔が開くかどうかは黒目の周りの光センサーで判断しているからな

本を読むときは明るいところで見なさい
アニメを見るときは部屋を明るくしてみましょう

子供でも知っていることだぞ
629デフォルトの名無しさん:2013/10/24(木) 03:10:20.54
一日16時間読書する馬鹿はいないが、土方は画面を見続けるのだよ。
630デフォルトの名無しさん:2013/10/24(木) 03:14:57.46
つまり>>70は暗いところで16時間見続けてる土方か
631デフォルトの名無しさん:2013/10/24(木) 04:20:13.78
VS標準の背景黒は文字が暗すぎて読みにくい
632デフォルトの名無しさん:2013/10/24(木) 06:51:47.00
>>626
あれは単に歴史的背景ってやつだ。
昔のモニタはああいう配色しかなかったんだよ。
633デフォルトの名無しさん:2013/10/24(木) 07:33:57.12
ブラウン管やプラズマや有機ELなどの発光系は黒が主体の方が効率的
初期の反射型液晶などの遮断型は白の方が効率的
バックライト型液晶だと制御によって変わってくる
634デフォルトの名無しさん:2013/10/24(木) 07:49:27.17
液晶の黒画面だと画面にキモい顔が映り込むからだろう
635デフォルトの名無しさん:2013/10/24(木) 13:07:48.72
グレア液晶使ってるプログラマいるのか?
636デフォルトの名無しさん:2013/10/24(木) 13:09:48.82
普通に考えているだろ
637デフォルトの名無しさん:2013/10/24(木) 13:40:49.07
グレア使って目が痛いとか言っているアホはどうしようもないな
ゲームや動画を綺麗にみたいなら別途PC組めよ
638デフォルトの名無しさん:2013/10/24(木) 14:37:57.66
いったい何のスレなんだよ死ねよ
639デフォルトの名無しさん:2013/10/24(木) 17:45:30.19
オッケー死ぬよ
640デフォルトの名無しさん:2013/10/24(木) 19:01:11.64
オッケーデスよ
641デフォルトの名無しさん:2013/10/24(木) 23:28:01.12
WebBrowserのドキュメントの現在のスクロール位置を取得するためにWebBrowser.Document.Body.ScrollTopで取得と設定をしているんですが0が設定or取得されます
どうすればいいんですか?
642デフォルトの名無しさん:2013/10/24(木) 23:47:09.01
過去ログに同じ質問あったと思う。前スレかな?
643デフォルトの名無しさん:2013/10/25(金) 00:45:59.50
過去ログの方を閲覧し実行しましたが無理でした
試しにScrollIntoViewもやりましたが無理でした
644デフォルトの名無しさん:2013/10/25(金) 05:47:24.70
WebBrowser.Document.Body.ScrollTopでぐぐったらそれっぽいのがトップに出てきたけど
過去ログのとかぶってたりするのかな
645デフォルトの名無しさん:2013/10/25(金) 07:13:17.57
あの質問したの俺だけどもらった回答じゃできなくて
ググったら分かったので出来たと書いただけだから
参考にならないと思う。
646デフォルトの名無しさん:2013/10/25(金) 10:29:54.90
ひでーwww
647デフォルトの名無しさん:2013/10/25(金) 14:09:43.79
答え教えてやれよ・・・
648デフォルトの名無しさん:2013/10/25(金) 14:13:38.21
ググれば解決するって事実が分かっただけでも収穫だろ
649デフォルトの名無しさん:2013/10/25(金) 19:09:31.77
WebBrowser.Document.Body.ScrollTopでもう一度やってみたらできました
650デフォルトの名無しさん:2013/10/25(金) 19:13:04.01
それだけでは不完全だよ
651デフォルトの名無しさん:2013/10/25(金) 19:19:35.96
無駄にThread.Sleep(850)も挟んでしまいました
652デフォルトの名無しさん:2013/10/25(金) 19:23:48.30
「これがないとなぜか動かない」ってコメント入れとけよ
653デフォルトの名無しさん:2013/10/25(金) 19:44:11.27
しっかり書いてあります
654デフォルトの名無しさん:2013/10/26(土) 01:21:30.05
http://stackoverflow.com/questions/3590650/see-httpwebrequest-as-string-before-getresponse-without-using-fiddler

通信ログを上の方法で出力してるんだが、
コード内からTraceSource通してログ出力しようとすると例外が出る。↓みたいな方法

var traceSource = new System.Diagnostics.TraceSource("System.Net.Sockets");
traceSource.TraceEvent(System.Diagnostics.TraceEventType.Verbose, 0, "hogehoge");

例外:'tracemode' は、型 'System.Diagnostics.TraceSource' に対して有効な構成属性ではありません。

で、tracemode属性を設定しなかったら、上の例外は出なくなるけど、規定値が「includehex」なんで通信ログに16進数が出力される。

tracemode属性を指定して、コード内から例外出さずにログ出力する方法ってある?
655デフォルトの名無しさん:2013/10/26(土) 06:42:56.68
uint u = 0xF0000000;
int i = 123;

var a = u & i;

aの型は何だと思います?
つーかどうしてこうなるの?
656デフォルトの名無しさん:2013/10/26(土) 10:14:57.42
そういう仕様だからだ。
657デフォルトの名無しさん:2013/10/26(土) 11:42:01.29
自分で試してみればいいじゃ。
ちなみに Int64 だった。
658デフォルトの名無しさん:2013/10/26(土) 13:36:55.76
uint の範囲と int の範囲の両方を表現できる型で最も小さいのが Int64 だからでしょ。
659デフォルトの名無しさん:2013/10/26(土) 14:02:09.15
なるほろ
660デフォルトの名無しさん:2013/10/26(土) 18:18:54.66
数字リテラルって123u みたいに書いたほうが速いの?
123って書いてもコンパイル時に最適化してくれる?
661デフォルトの名無しさん:2013/10/26(土) 18:32:58.71
>>660
何言ってるのか意味不明ですよ
662デフォルトの名無しさん:2013/10/26(土) 18:38:55.08
リテラルはリテラルのままで埋め込まれて実行時に型が決まると思ってんじゃないの
違います
663デフォルトの名無しさん:2013/10/26(土) 18:56:35.71
別にリテラルで処理が停止するくらい遅くても仕様どおり
664デフォルトの名無しさん:2013/10/26(土) 19:16:08.24
何のめたにサフィックスがあると思ってんだ。
665デフォルトの名無しさん:2013/10/26(土) 20:03:00.03
嵌りたくなかったらint以外はとにかくサフィックスつけろ、var使うな。これにつきる。
666デフォルトの名無しさん:2013/10/26(土) 20:23:10.13
>>660
コンテキストによる。代入ならしてくれる。演算ならしてくれない。
667デフォルトの名無しさん:2013/10/26(土) 23:54:35.90
implicit operatorがあったりすると処理が変わってくることもあるな
668デフォルトの名無しさん:2013/10/28(月) 13:16:51.25
俺intも出来るだけInt32使ってるはw
669デフォルトの名無しさん:2013/10/28(月) 13:20:29.75
intに関してはむしろintの方がInt32よりも実際の意味を正しく表してるけどな
Int32のエイリアスだと言いながらも実際にはint/Int32は特別扱いされるので厳密に言えばInt32型になるわけじゃない
Parseとか呼ぶときは実際にInt32のメソッドを呼んでるのでInt32が自然だけど
670デフォルトの名無しさん:2013/10/28(月) 13:27:14.02
型としてのintとInt32は同じ意味で、どちらもInt32じゃなくて特別なプリミティブ型(int32)になる
メソッドを呼ぶ時だけはInt32型として扱われる
だったはず
671デフォルトの名無しさん:2013/10/28(月) 13:56:56.16
どう特別なんだよ
672デフォルトの名無しさん:2013/10/28(月) 14:34:05.79
>>671
コンパイル結果をildasmして見てみればわかるが、ILのプリミティブ型になる
673デフォルトの名無しさん:2013/10/28(月) 17:16:53.74
intとshortってshortの方が速度早いの?
あまり変わらないって聞いたんだが
674デフォルトの名無しさん:2013/10/28(月) 17:25:57.29
>>673
intの方が通常速いよ
ガチな数値計算で大きな配列に繰り返しアクセスするようなケースで
メモリアクセスがボトルネックになっているときは、
キャッシュに乗りやすい分shortの方が速くなるかも
675デフォルトの名無しさん:2013/10/28(月) 17:32:45.94
バイナリIOに時間がかかっているときは極力サイズを削った方が当然速くなる
676デフォルトの名無しさん:2013/10/28(月) 17:51:35.52
8bit CPUでも使わない限りたいした差ないだろ。あれ8bitのC#プラットフォームないか
677デフォルトの名無しさん:2013/10/28(月) 22:17:15.83
少なくともx86だとワードだろうがロングワードだろうがメモリアクセスも演算も
速度一緒じゃないの?
678デフォルトの名無しさん:2013/10/28(月) 22:19:41.35
乗り遅れてる話に参加しなくてよい
679デフォルトの名無しさん:2013/10/28(月) 22:21:18.06
WCFってこれSystem.Netじゃ駄目なの?
Configファイルがあったりと逆に面倒そうなんだけど
680デフォルトの名無しさん:2013/10/29(火) 01:14:36.27
x86の15ビットだとレジスターが16ビットだから、shortとlongは速度差が相当あった
windowsの32ビット対応は95からだし、本格対応は2000から
681デフォルトの名無しさん:2013/10/29(火) 01:36:00.77
>>677
メモリアクセスは配列の連続アクセスとかなら当然サイズ小さいほうが速いよ
682デフォルトの名無しさん:2013/10/29(火) 16:08:48.28
eventを含むインターフェースを明示的に実装する場合、eventを自動実装できないんですか?
683デフォルトの名無しさん:2013/10/29(火) 16:22:12.57
そだよ
684デフォルトの名無しさん:2013/10/29(火) 16:27:50.61
なんで自動実装してくれないんだろう。
何か技術的な問題があるのかな?
685デフォルトの名無しさん:2013/10/29(火) 17:38:43.91
同名のイベントを持つ複数のインターフェイスを実装する
interface IHoge { event EventHandler Piyoed; }
interface IFuga { event EventHandler Piyoed; }
public class Foo : IHoge, IFuga {
&nbsp; &nbsp; public event EventHandler Piyoed;
&nbsp; &nbsp; event EventHandler IFuga.Piyoed;
}
そうするとIFuga.Piyoedを発生させることができないんだな

((IFuga)this).Piyoed(this, EventArgs.Empty);
と書けるように思えるかも知れないけど、
自動実装されたイベントデリゲートはこういう呼び出し方が許可されてない
686デフォルトの名無しさん:2013/10/29(火) 18:20:47.76
>>685
ああ、そういうことなのね。

今調べて知ったんだけど、コンパイラが生成するコードは.NET4から変わったんだね。
http://ufcpp.net/study/csharp/misc_synchronize.html
>.NET 4 では、インターロック アップデートを使った実装に変更。
687デフォルトの名無しさん:2013/10/29(火) 18:58:53.51
ひょっとして.NETが時代遅れになったら土方はCOMと.NETと新しい技術を相互運用しないといけないのか?
嫌になるね。レガシーアーキテクチャへの保証なんかさっさと切り捨てればいいのに
688デフォルトの名無しさん:2013/10/29(火) 19:04:20.63
お金になるんで
689デフォルトの名無しさん:2013/10/29(火) 19:29:07.85
COBOLみたいな存在になんの?
690デフォルトの名無しさん:2013/10/29(火) 19:35:29.77
>>687
すでにstoreアプリのwinmdが次世代COMって位置づけになってるね
desktopアプリにも落ちてくるかな
691デフォルトの名無しさん:2013/10/29(火) 20:09:55.44
>>681
ストレージならそうだけどメモリは違うでしょ。
DMAみたいのはどうだか知らないがCPUが自分で読む限り同じなはず
692デフォルトの名無しさん:2013/10/29(火) 20:56:21.99
その辺にしておかないと恥かくぞ
693デフォルトの名無しさん:2013/10/29(火) 22:09:06.14
何のこっちゃ。
馬鹿はいつもそれだな
694デフォルトの名無しさん:2013/10/29(火) 22:16:34.37
メモリアクセスだって時間かかるんだぞ。ストレージだったら時間かかるってのが分かって、
なんでメモリで時間かからないと思うんだよ。黙っとけってwww
695デフォルトの名無しさん:2013/10/29(火) 22:23:09.55
x86のアーキテクチャーを詳しく知ってるわけじゃないが、普通に考えれば
ワード命令もロングワード命令も実行時間は変らないはず。

これは今時のCPUでないと思うが、むしろワードだとアドレスが4n+2の時
上位と下位のワードをスワップする必要があってむしろ遅くなる可能性すらある。
696デフォルトの名無しさん:2013/10/29(火) 22:30:54.04
>>695が言ってるのはCPUがボトルネックの場合の話だろ
メモリがボトルネックなら配列要素のサイズが小さければ
連続アクセスのキャッシュミスが減って速くなる可能性があるよ
697デフォルトの名無しさん:2013/10/29(火) 22:32:49.20
x86ではlongはmov二回になるよ。
698デフォルトの名無しさん:2013/10/29(火) 22:36:06.67
ガチな数値計算だと、連続してアクセスされやすい領域をわざわざソートしてまとめて
キャッシュに乗りやすくすることでメモリアクセスを速くしたりするんだぜ
CPUのキャッシュを考慮するのはHPCでは普通に行われる最適化
699デフォルトの名無しさん:2013/10/29(火) 22:39:04.96
>>697
ワードは16ビット、ロングワードは32bitのつもりで使ってる。
妙な用法だけどx86の世界では伝統的にそうだったと思ったけど。
700デフォルトの名無しさん:2013/10/29(火) 22:41:36.69
x86ならword、dword、qwordと言え。
701デフォルトの名無しさん:2013/10/29(火) 22:46:39.92
IDが見えない板で紛らわしいオレオレ用語を使うんじゃねえよ
702デフォルトの名無しさん:2013/10/29(火) 23:09:01.28
>これは今時のCPUでないと思うが、むしろワードだとアドレスが4n+2の時
>上位と下位のワードをスワップする必要があってむしろ遅くなる可能性すらある。

64bitCPU時代にInt32は終わったな。
703デフォルトの名無しさん:2013/10/30(水) 05:06:15.20
ID強制表示にするだけでだいぶまともになると思うんだけどなこの板
704デフォルトの名無しさん:2013/10/30(水) 11:18:42.84
VC#2010Expressを使っているんですが
F5でデバッグ開始してプログラムが起動しているときに
Console.Writeで指定した変数の中身をどこかに出力させて確認する方法ありませんか?
ブレークポイントだと一回一回処理が止まってしまうので困ります
現状はTextBoxを配置して、textBox1.Text += hensuu+"\n"みたいな感じで出力させています
705デフォルトの名無しさん:2013/10/30(水) 11:22:20.18
ConsoleWriteはIDEの出力ウインドウに出る
706デフォルトの名無しさん:2013/10/30(水) 11:40:28.57
>>704
stackoverfrow を allocconsole で探す
707デフォルトの名無しさん:2013/10/30(水) 11:44:22.38
そういうウィンドウがあるのはじめて知りました
デバッグ->ウィンドウ->出力でウィンドウが表示されました
ありがとうございます
708デフォルトの名無しさん:2013/10/30(水) 11:45:09.70
allocconsoleっていうのも調べてみます
709デフォルトの名無しさん:2013/10/30(水) 11:46:17.52
あとSystem.Diagnostics名前空間のDebugとかTraceとかも使うと良い
710デフォルトの名無しさん:2013/10/30(水) 11:47:36.41
今まで出力見ないでデバッグしてたのか
711デフォルトの名無しさん:2013/10/30(水) 15:21:59.61
なんでお前らそんな詳しいんだよ
712デフォルトの名無しさん:2013/10/30(水) 15:29:31.98
3年ROMってろ
いや割りとマジで
713デフォルトの名無しさん:2013/10/30(水) 15:47:56.03
初心者専用スレなので今日はじめたばかりの方も大歓迎です。
質問はデバックからマルチスレッドまでなんでもok。
714デフォルトの名無しさん:2013/10/30(水) 18:09:57.96
>>710
>現状はTextBoxを配置して、textBox1.Text += hensuu+"\n"みたいな感じで出力させています
まあこれはこれで新しいバグのもとになったりするが
715デフォルトの名無しさん:2013/10/30(水) 18:28:34.92
>>712
なんかいいことあるのか?
716デフォルトの名無しさん:2013/10/30(水) 18:48:23.41
趣味の範囲ならデバッガ脳でいいんだよね?
717デフォルトの名無しさん:2013/10/31(木) 08:04:11.26
網目、ネットを表現するデータ構造ってどれですかね?
718デフォルトの名無しさん:2013/10/31(木) 08:18:50.04
自分で作れ
719デフォルトの名無しさん:2013/10/31(木) 10:45:06.22
フィールドで以下のような宣言があるのですが
static TestClass testClass;

クラスを型として扱ってるんですか?
何でググればいいかわからなかったので質問しました
720デフォルトの名無しさん:2013/10/31(木) 10:49:39.73
クラスが型でなければ何なんだ
質問の意図が分からん…
721デフォルトの名無しさん:2013/10/31(木) 10:51:45.39
そりゃクラスは型ですから
型を型として扱って何があかんのですか
722デフォルトの名無しさん:2013/10/31(木) 10:57:58.11
そういう疑問に至った前提が知りたいなあ
C#初めて?オブジェクト指向は?今までどんな言語を?
723デフォルトの名無しさん:2013/10/31(木) 11:14:53.92
初期化子が無いのを気にしてるんじゃ無いのかな
static TestClass testClass = new TextClass();
とか
static TestClass testClass = null;
なら納得するとか
724デフォルトの名無しさん:2013/10/31(木) 11:24:15.66
>>723
理解しました
ありがとうございます
725デフォルトの名無しさん:2013/10/31(木) 11:31:43.40
型って値型、参照型のこと言ってんのか?
726デフォルトの名無しさん:2013/10/31(木) 12:00:12.83
そんな高級な話じゃなくて、変数ってなに? みたいな話じゃねーの
727デフォルトの名無しさん:2013/10/31(木) 12:05:42.54
Javaと違うって話じゃねーの
728デフォルトの名無しさん:2013/10/31(木) 12:12:20.59
TestClass       testClass
↑これは型(クラス)    ↑あれ?これもテストクラスって名前。型なの???
ってことだろ
729デフォルトの名無しさん:2013/10/31(木) 12:41:52.71
つまりそれはTestClass型の変数testClassだよって言えばよかったのかな
730デフォルトの名無しさん:2013/10/31(木) 12:45:06.01
大文字小文字区別する言語ってのはさすがに知ってるだろ!

とはいっても
TestClass TestClass;
型名と変数名を同じにすることは許可されてるからなぁ
731デフォルトの名無しさん:2013/10/31(木) 13:07:08.94
初心者用とは書いてあるけど
初心者に毛の生えた連中がたむろする場所じゃないぞ
732デフォルトの名無しさん:2013/10/31(木) 13:46:45.45
>>731はマルチスレッド坊や
733デフォルトの名無しさん:2013/10/31(木) 15:58:55.37
わからないことをネットで検索して調べると偏った知識になるからな
基礎をしっかり学ぶにはやっぱり入門書1冊購入することをすすめるよ
ほんとに1冊それだけでいいんで、あとはぐぐっていけばなんとかなるし

ある程度プログラム組めるようになっても
「オブジェクト指向とは何か?」
という問いかけに答えられない奴がいたりする

おそらくここの半数の人間は答えられないだろうね
734デフォルトの名無しさん:2013/10/31(木) 16:02:59.61
趣味プログラマはやりたいことを優先するから行き詰まるんだよね
学校の勉強でもそうだろ?
目的の前にまず基礎を学ばせる
多くの人はなぜこんな勉強しなければいけないんだと思って脱落するんだけど
ここをしっかり学習しておくと、目的を達成することができるようになる
こういうことは大学行けるぐらいの知能があればわかることなんだが
そういうこともわからない人が多いよね
735デフォルトの名無しさん:2013/10/31(木) 16:12:44.78
( ´,_ゝ`)プッ
736デフォルトの名無しさん:2013/10/31(木) 16:14:19.75
あほが来たなw
737デフォルトの名無しさん:2013/10/31(木) 16:19:57.61
空気脳のご意見有難うw
738デフォルトの名無しさん:2013/10/31(木) 16:36:14.96
>>733-734
そのとおりです!

>>735-737みたいな馬鹿どもは皆さん無視しましょう
739デフォルトの名無しさん:2013/10/31(木) 16:38:05.15
>>733-734
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
740デフォルトの名無しさん:2013/10/31(木) 16:41:56.04
>>739
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
741デフォルトの名無しさん:2013/10/31(木) 16:44:22.82
>>740
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
742デフォルトの名無しさん:2013/10/31(木) 16:51:50.27
空気脳が必死の自演w
743デフォルトの名無しさん:2013/10/31(木) 16:59:01.87
>>742
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
744デフォルトの名無しさん:2013/10/31(木) 17:05:00.97
あほなだけじゃなくて基地外だったなw
745デフォルトの名無しさん:2013/10/31(木) 17:05:01.91
仕事のプログラマより趣味グラマのほうがレベルは高い
これが真理
746デフォルトの名無しさん:2013/10/31(木) 17:08:20.61
>>745
そのとおりだな
747デフォルトの名無しさん:2013/10/31(木) 17:16:54.01
趣味グラマはネット上で大きな淘汰圧に晒されるけれど
職業プログラマはリアル世界で雨後の竹の子のごとく現れるからな
748デフォルトの名無しさん:2013/10/31(木) 17:30:49.03
マ板行け
749デフォルトの名無しさん:2013/10/31(木) 17:33:59.50
>>748
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
750デフォルトの名無しさん:2013/10/31(木) 18:02:13.91
>>745
趣味だと大規模ネットワークとかコスト的に無理じゃん
そういう経験ない素人を技術力あるとは言えないな
751デフォルトの名無しさん:2013/10/31(木) 18:03:07.88
nyの奴とか趣味で大規模p2p作ってんじゃん
752デフォルトの名無しさん:2013/10/31(木) 18:07:33.58
.Net4.0と.Net4.5は共存できないのですが
.Net4.5で作ったプログラムはNet4.0の環境では動かないのでしょうか?
753デフォルトの名無しさん:2013/10/31(木) 18:12:00.62
>>752
4.0と4.5共存してる
動く
754デフォルトの名無しさん:2013/10/31(木) 18:12:20.33
ほぼ動く
755デフォルトの名無しさん:2013/10/31(木) 18:14:14.08
>>751
バカあれは営利だ
業務だよ
756デフォルトの名無しさん:2013/10/31(木) 18:28:53.54
>>755
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
757デフォルトの名無しさん:2013/10/31(木) 18:41:58.04
>>756
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
758デフォルトの名無しさん:2013/10/31(木) 18:45:52.31
>>757
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
759デフォルトの名無しさん:2013/10/31(木) 18:48:00.48
>>758
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
760デフォルトの名無しさん:2013/10/31(木) 18:50:59.95
幼稚だね
761デフォルトの名無しさん:2013/10/31(木) 19:08:12.72
>>760
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
762デフォルトの名無しさん:2013/10/31(木) 21:11:32.63
 
 マ 板 で や れ 
 
763デフォルトの名無しさん:2013/10/31(木) 21:13:33.83
>>762
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
764デフォルトの名無しさん:2013/10/31(木) 21:15:03.54
うざっ
765デフォルトの名無しさん:2013/10/31(木) 21:20:18.69
>>764
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
766デフォルトの名無しさん:2013/10/31(木) 22:01:32.28
強制ID早く来ないかなー
767デフォルトの名無しさん:2013/10/31(木) 22:29:25.53
>>766
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
768デフォルトの名無しさん:2013/10/31(木) 22:32:24.13
趣味でコード書いてる奴は中高でソフ開受かっちゃうし。
769デフォルトの名無しさん:2013/10/31(木) 22:40:55.18
あんなもんそこそこの大学出た文系学生が未経験でIT入って一、二年目で取れる
770デフォルトの名無しさん:2013/10/31(木) 22:42:50.48
>>769
こういうこと言うやつってプライドが無駄に高いから分からないことがあっても人に聞かず、
知識はあっても実際のプログラミング能力がプライドほど高くないからソースが書けない
職場にいたら迷惑な存在だよな
771デフォルトの名無しさん:2013/10/31(木) 22:51:50.65
ちゃんと全レスしろ
772デフォルトの名無しさん:2013/10/31(木) 23:27:19.65
Int128 作りたいんだけどんな感じに実装すればいいんでしょうか。
773デフォルトの名無しさん:2013/10/31(木) 23:35:55.55
class Int128
{
 int64 nhigh,nLow:
}
って感じに
774デフォルトの名無しさん:2013/10/31(木) 23:36:20.15
Decimal使ってろ
775デフォルトの名無しさん:2013/11/01(金) 00:01:47.99
>>772
除算の実装だけはちょっと面倒だけど他はどうってことない猿仕事だと思うけど
776デフォルトの名無しさん:2013/11/01(金) 01:56:25.97
Int512作りたいんだけど
777デフォルトの名無しさん:2013/11/01(金) 01:58:51.49
固定長にこだわりすぎだろ
778デフォルトの名無しさん:2013/11/01(金) 02:19:24.54
Int1028作りたいんだけど
779デフォルトの名無しさん:2013/11/01(金) 02:21:26.61
>>778
1024だろ
780デフォルトの名無しさん:2013/11/01(金) 02:35:06.61
それじゃ4ビット足りなかったんだろw
781デフォルトの名無しさん:2013/11/01(金) 05:19:09.96
win32apiを呼び出す時にたまにvoid**を引数に取るメソッドが
ありますが、あれはC#では、どう書いたら良いでしょうか
一応、自分はプログラミング言語はC/C++から入ったので
ポインタのアドレスを渡すのは解るんですが
C#での書き方がわかりません。
どなたかご教示願います。
782デフォルトの名無しさん:2013/11/01(金) 06:12:09.31
複数の書き方があって場合による
ポインタを受け取るためならout IntPtrが基本
783デフォルトの名無しさん:2013/11/01(金) 07:10:30.18
>>750
大規模ネットワーク (某キャリアの呼制御) やってたけど、一人が全部やる訳じゃないし、そもそも信頼性が要求されるから、技術的に最先端とかやらない。
枯れた技術でこつこつ積み重ねる。
職業プログラマーなら誰でも知ってることだよ。
むしろ、規模は大きくないけど大学とかの研究室に納めるような機器の方がずっとレベルが高い。
784デフォルトの名無しさん:2013/11/01(金) 07:50:00.75
>>781
そのapiの仕様によるかな。
他のパラメータで返ってくる値の型が決まるなら、
DllImportの宣言で型指定した専用の宣言をしてしまったり。
785デフォルトの名無しさん:2013/11/01(金) 08:05:55.68
786デフォルトの名無しさん:2013/11/01(金) 09:16:16.08
>>783
お前が数学苦手なだけなんじゃね?
787デフォルトの名無しさん:2013/11/01(金) 10:37:14.74
>>786
どこから "数学" なんて出てくるんだよ。
ひょっとして、難しいこと ≡ 数学 って言う、数学コンプレックスなの? (w
788デフォルトの名無しさん:2013/11/01(金) 10:39:51.34
なんで==演算子とEquals(object)、Eauals<T>の三つもあるんですか?
789デフォルトの名無しさん:2013/11/01(金) 11:13:16.76
>>788
最近C#さわってなくてjavaさわってるけど
==は、インスタンスのハッシュ値が同じなら
trueで、equalsは独自でoverrideして定義する。
790デフォルトの名無しさん:2013/11/01(金) 15:16:49.05
カスタムイベントがわからん
791デフォルトの名無しさん:2013/11/01(金) 15:41:33.17
何が分からんのか分からん
792デフォルトの名無しさん:2013/11/01(金) 16:09:33.71
コントロールとか
コントロールのプロパティやアイテム
などを変更したり追加したりする場合、
Form1.csに全部書くとメンテナンスしにくいので
それぞれ別ファイルに分けたいのですが
こういう場合はどうやるのでしょうか?
793デフォルトの名無しさん:2013/11/01(金) 16:27:32.10
>>792
クラス追加
794デフォルトの名無しさん:2013/11/01(金) 16:53:17.56
splitContainerやTabControlを削除する場合、その中に含まれるコントロールを先に削除し解かないとメモリ上に残り続けますか?
一応、含まれるコントロールを全て削除してからsplitContainerやTabControlを削除してますが・・
795デフォルトの名無しさん:2013/11/01(金) 17:01:00.57
別のcsファイル作って
public partial class Form1 : Form
{}
って実装書いてやっても動くよな
だけど、フォームデザイナがその追加した方のcsファイルだと誤動作するw
796デフォルトの名無しさん:2013/11/01(金) 17:48:12.57
フォームデザイナー便利なんだけど勝手に変なことするのやめて欲しい
797デフォルトの名無しさん:2013/11/01(金) 18:12:49.94
>>794
親コントロールをDisposeすると子コントロールもDisposeされる仕組み。

Panel p = new Panel();
Control c = new Control();
p.Controls.Add( c );

p.Dispose();

bool f = c.IsDisposed; //true

あと一般的に参照が切れればいつかはガベコレされる
798デフォルトの名無しさん:2013/11/01(金) 18:24:45.12
ガベコレ=ガーターベルトコレクション
799デフォルトの名無しさん:2013/11/01(金) 18:40:30.45
そうでしたか
親コントロール消すときは無駄なことをしないようにします
800デフォルトの名無しさん:2013/11/01(金) 18:41:18.81
あ、TabControlでtabをremoveした場合も当てはまりますか?
801デフォルトの名無しさん:2013/11/01(金) 19:09:21.61
button1.Tagにnew object{1,2,3}を代入したんですが
button1.Tag[0]で値が取れるのかなと思ったら
>角かっこ [] 付きインデックスを 'object' 型の式に適用することはできません
ってエラーになります
どうやってTagに代入した値を取得できますか?
802デフォルトの名無しさん:2013/11/01(金) 19:15:19.49
object[]にキャストしないと
803デフォルトの名無しさん:2013/11/01(金) 19:27:26.15
おおおできましたありがとうございます

object[] Tag1 = (object[])button1.Tag;って書いたら
Tag1[0]で取得できました

でもなぜか
(int)(object[])button1.Tag[0]とか
(int)((object[])button1.Tag[0])だとダメなようで一度変数に格納しないとダメなんですが書き方間違ってますか?
804デフォルトの名無しさん:2013/11/01(金) 19:34:19.21
演算子の優先順位考えないと駄目
(int)((object[])button1.Tag)[0]
C#のキャスト演算子は順位が低めだ
805デフォルトの名無しさん:2013/11/01(金) 19:37:16.00
おおなるほど、勉強になりました
806デフォルトの名無しさん:2013/11/01(金) 20:33:57.82
演算子使う時にカッコ付けない奴は信用出来ない
必ずミスが人より多いからプロジェクトから排除した方がいい
807デフォルトの名無しさん:2013/11/01(金) 20:50:06.13
((a + (b * c)) - d)
808デフォルトの名無しさん:2013/11/01(金) 20:54:59.84
((((;゚Д゚))))
809デフォルトの名無しさん:2013/11/01(金) 21:00:08.41
((L + (^ * ^)) - d)
810デフォルトの名無しさん:2013/11/01(金) 21:00:43.65
(*)
811デフォルトの名無しさん:2013/11/01(金) 21:53:34.64
C:\a\b\dir (dirはフォルダ)
C:\a\b\file.txt
こういうパスから最後の
dir
file.txt
を取得したいのですが
\で分割して、配列のサイズから1引いた数をインデックスにして値を取得するっていうのは思いついたんですが
標準ライブラリでこういうのを取得できるメソッドを教えてください
812デフォルトの名無しさん:2013/11/01(金) 21:55:58.06
System.IO.Path
813デフォルトの名無しさん:2013/11/01(金) 21:59:21.34
Path.GetFileNameでできました
814デフォルトの名無しさん:2013/11/01(金) 22:14:52.64
Uriも一応使える
815デフォルトの名無しさん:2013/11/01(金) 22:22:47.35
Entity to SQL で単純なカウントする場合、context.TableName.Count()ってしてるんだけど、このカウント処理って .NET側で実行されてる?
それとも"select count(*) from TableName"が実行されてる?
816デフォルトの名無しさん:2013/11/01(金) 22:27:30.35
何のためのQueryable.Countだと
817デフォルトの名無しさん:2013/11/02(土) 03:49:26.64
win7のエクスプローラの↓のアドレスのようなのはどうやって作るのですか?
コンピュータ▼D▼音楽▼
818デフォルトの名無しさん:2013/11/02(土) 04:13:21.11
ボタンやメニューをオーナードローして組み合わせたコントロールをゴリゴリ作るか、
Win7限定でいいならもしかしたらIDeskbandか何かでwindowsのコントロールをそのまま再利用できるかもな
819デフォルトの名無しさん:2013/11/02(土) 05:22:04.85
820デフォルトの名無しさん:2013/11/02(土) 07:03:28.49
すでにその型なのに同じ型でCastしちゃうと処理が重くなったりするんですかね?
821デフォルトの名無しさん:2013/11/02(土) 07:33:08.02
重くなってから判断すれば?
822デフォルトの名無しさん:2013/11/02(土) 07:42:48.71
無駄キャストは最適化を許可してなくても最適化されてILから消える
実行速度には全く関係ない
823デフォルトの名無しさん:2013/11/02(土) 08:19:59.50
>>819
それです

>>818
WPFだと簡単にできるのかな
標準でついててほしかった
824デフォルトの名無しさん:2013/11/02(土) 10:43:57.51
かゆいところはoverrideしないとダメなのって面倒くさいんですが
MSはそういうの改善してくれないんですか?
825デフォルトの名無しさん:2013/11/02(土) 11:16:24.78
>>824
ここに書いてもMSには伝わらないだろうが
改善案があるなら教えてくれ。興味がある。
826デフォルトの名無しさん:2013/11/02(土) 14:01:13.78
汎用ライブラリが俺仕様になってないから改善しろっていうわけ?
病院いけ
827デフォルトの名無しさん:2013/11/02(土) 14:02:57.83
シェルで採用してるUIぐらい標準コントロールで用意しろってことだろ
UIの統一性って意味合いからしてもそっちの方がいい
828デフォルトの名無しさん:2013/11/02(土) 14:12:25.07
アドレスバーはoverrideしてどうにかなるレベルじゃないから別の話だろ
829デフォルトの名無しさん:2013/11/02(土) 14:46:44.63
標準ライブラリに含めるほど汎用性のあるものとも思えんけどね。

どのみちあのUIの登場はWindows Formが事実上メンテモードに入った後だから
少なくともWindos Formに追加はまずありえない。

というか、WPFならテンプレートの再帰的適用を使えば簡単にできそうだな
830デフォルトの名無しさん:2013/11/02(土) 15:57:14.85
一応言っておきますけどアドレスバーの質問した僕と>>824は別人ですよ
831デフォルトの名無しさん:2013/11/02(土) 16:13:33.86
>>830
そんなこと別に誰も聞いてねえよ
優等生タイプかよ4ね
832デフォルトの名無しさん:2013/11/02(土) 16:38:04.95
api code packはオワコンなの?
833デフォルトの名無しさん:2013/11/02(土) 18:22:07.09
インボケーションリストってなんですか?
834デフォルトの名無しさん:2013/11/02(土) 18:35:55.69
デリゲートが実際にどのインスタンスのどのメソッドをどんな順番で呼び出すかのリスト
835デフォルトの名無しさん:2013/11/02(土) 23:20:39.88
向こうでは答えてもらえなさそうなのでこちらで

コントロールのスタイルをいじっているんですがうまくできません
ComboBoxやListBoxでマウスオーバーのとき青いハイライトになります
なぜスタイルの設定が反映されないんでしょうか?
836デフォルトの名無しさん:2013/11/02(土) 23:23:00.58
でも756はスルーするんだね
837デフォルトの名無しさん:2013/11/02(土) 23:25:05.91
見てきたけどあんなんじゃ分からんよ
悪いけどここでも無回答だ
838デフォルトの名無しさん:2013/11/02(土) 23:39:46.07
スタイル設定してもOSのデフォルトのハイライトが優先されるんです
多分WPFをそこそこやっている人ならだれでも知っていることなんでしょうけど
それの対処方がネットで探しても情報が少なくてわかりません
839デフォルトの名無しさん:2013/11/02(土) 23:46:36.45
向こうに書いたけど基本的にStyleで大したことができると思うな
ControlTemplate使え
840デフォルトの名無しさん:2013/11/02(土) 23:52:02.42
WPFはこういうところが回りくどくて嫌だな
841デフォルトの名無しさん:2013/11/03(日) 17:01:20.63
842デフォルトの名無しさん:2013/11/03(日) 17:40:07.77
やらしい顔w
843デフォルトの名無しさん:2013/11/04(月) 01:23:52.55
>>841
速攻でブラクラ登録した
844デフォルトの名無しさん:2013/11/04(月) 08:47:43.66
C#はAnyCPUでコンパイルすると32bitと64bitどちらでも動きますが
なぜなんでしょうか?
845デフォルトの名無しさん:2013/11/04(月) 09:22:01.19
JITコンパイルでググれ
846デフォルトの名無しさん:2013/11/04(月) 09:56:50.32
そっかJITだからか
ありがとう
847デフォルトの名無しさん:2013/11/04(月) 11:18:14.27
ある意味インタプリタなんだからそりゃ動くだろ
848デフォルトの名無しさん:2013/11/04(月) 12:45:09.90
どんな意味でもインタープリタじゃないからアホか
849デフォルトの名無しさん:2013/11/04(月) 16:38:08.20
ある意味ネイティブだからな
850デフォルトの名無しさん:2013/11/04(月) 16:38:34.10
ある意味ある意味
851デフォルトの名無しさん:2013/11/04(月) 17:22:49.91
クラス名にSharpという単語を使っている例をたまに見ますが
どういう意味で使っているんですか?
852デフォルトの名無しさん:2013/11/04(月) 17:26:37.38
「誠意と創意」
Wikipediaより引用
853851:2013/11/04(月) 17:39:02.18
>>852
誠意をもって創ったクラスということですね
ありがとうございました!
854デフォルトの名無しさん:2013/11/04(月) 17:48:56.55
笑わせるな
855デフォルトの名無しさん:2013/11/04(月) 17:51:32.09
真面目に教えてやれよ
856デフォルトの名無しさん:2013/11/04(月) 18:26:32.96
エスパーさん出番ですよ
857デフォルトの名無しさん:2013/11/04(月) 18:26:58.97
>>848
じゃ、なんでもっさりしてるんだ?
858デフォルトの名無しさん:2013/11/04(月) 18:33:22.04
VM起動してるからじゃねーの
859デフォルトの名無しさん:2013/11/04(月) 18:34:27.86
速度の差はCと比べて1.3倍しかないぞ
860デフォルトの名無しさん:2013/11/04(月) 18:38:12.30
最初はじっとしてるからだよ
861デフォルトの名無しさん:2013/11/04(月) 18:51:55.90
審議中
862デフォルトの名無しさん:2013/11/04(月) 19:04:56.74
1.3倍遅くなる内訳ってどんなもの?
863デフォルトの名無しさん:2013/11/04(月) 19:10:49.81
1.3倍だけど適当にforでしか試してない
すべて足し算で
C++/CLIだと1.15倍
864デフォルトの名無しさん:2013/11/04(月) 19:15:08.54
もっと何かMSが出してるデータでも出てくるのかと思った
拍子抜けと失望感
865デフォルトの名無しさん:2013/11/04(月) 19:37:11.65
所詮便所だと思いねえ
866デフォルトの名無しさん:2013/11/04(月) 19:39:29.77
c#で速度気にするとコードがc++よりはるかに汚くなる。
867デフォルトの名無しさん:2013/11/04(月) 19:40:27.51
C#とかでポインタ使いたくない
868デフォルトの名無しさん:2013/11/04(月) 19:41:20.16
ボトルネックになるならCで書きますしおすし
869デフォルトの名無しさん:2013/11/04(月) 19:44:27.55
ですよねーFFI万歳
870デフォルトの名無しさん:2013/11/04(月) 19:49:39.81
1.3倍というののうちわけで思いつくもの
ロードするDLLやサブシステムが多くて初期起動に時間がかかるとか
じっさいJITにかかる時間よりこっちの方が時間食ってる
グラフィックにGDI+系の重たいの使ってるからその分重く感じるとか
C++でもGDI+使えるからそれ使えばほぼ同等
.NET4以降だいぶ改善されたんだけど、コードセキュリティモデル(CAS)がらみの
オーバーヘッドが大きかったり
ほか細かいのの積み重ねだね
JITとGCのせいだけじゃないよ
この2つは意外と軽い
871デフォルトの名無しさん:2013/11/04(月) 19:55:51.37
長時間起動できるプロセスならその辺を償却して限りなくCに近くなるって認識でよいのかなん?
872デフォルトの名無しさん:2013/11/04(月) 19:57:14.38
あとは最適化の問題ぐらい
873デフォルトの名無しさん:2013/11/04(月) 20:04:51.37
最適化っていえば今のJITって使えるならSSE4とかAVX使うようになってんの?
VC++は確か2012からデフォルトでSSE2になったんだったか
874デフォルトの名無しさん:2013/11/04(月) 20:22:24.47
enum型と列挙型って同じ意味ですか?
875デフォルトの名無しさん:2013/11/04(月) 20:22:59.43
あとngen.exeとかってようわからんのだが
876デフォルトの名無しさん:2013/11/04(月) 20:31:51.97
>>873
まだベクタ化はサポートしてないから、SSE2のスカラサポートどまりじゃないかな
自動ベクタ化するかMonoみたくSystem.Simdでベクタ型を導入するか悩ましいとこだろう

>>874
そうだよ
877デフォルトの名無しさん:2013/11/04(月) 20:36:36.68
>>875
JIT相当の処理を事前に済ませておくツール
JITに対してAOT(ahead of time)と呼ばれる手法
コンパイルしたものはユーザーが触らないように妙な場所妙な名前で保存される
期待するほど起動が早くならないのは>>870のとおり
878デフォルトの名無しさん:2013/11/04(月) 20:41:14.72
>>876あざす!
879デフォルトの名無しさん:2013/11/04(月) 20:47:54.49
ngenで起動が速くなるのは起動に必要なコードだけを優先的に読みこむよう
最適化が行われるからだよ
IOに比べればJITのコストは無視出来るので、実はJITと起動時間は一般的に信じられているほどは関係無かったりする
880デフォルトの名無しさん:2013/11/04(月) 20:52:15.56
最適化の小細工なしだとngenの方がバイナリサイズが膨らんで
ディスクからの読み込みが増えて逆に起動遅くなったりする
881デフォルトの名無しさん:2013/11/04(月) 21:36:50.58
すいません、ちょっと教えてください
エラーが出ていますが大まかに以下のようなプログラムを書いています
ttp://ideone.com/OZOusC

9行目のwhileループの中でキー入力待ちとなりますが、
この時に押した文字が18行目のConsole.ReadLineに入力されてしまうのですが
これを入力させないようにするにはどうすればいいでしょうか?

今の状態だとDを押し、12行目のif文に入ると
-----
Dが押されました
d(入力待ち)
-----
と入力待ちにdが表示されてしまいます
これを
-----
Dが押されました
(入力待ち)
-----
という状態にしたいのですが
882デフォルトの名無しさん:2013/11/04(月) 21:40:31.23
意味が分からんが、入力されたキーをコンソールに表示させたくないってことでいいのか?
Console.ReadKeyで表示させないようにはできるが
883デフォルトの名無しさん:2013/11/04(月) 21:41:33.74
KeyDownじゃなくれReadKey使ってエコーバック防止しろ
884デフォルトの名無しさん:2013/11/04(月) 21:42:27.54
Windowsサービスのngenは無差別にngenかけるサービス?
885デフォルトの名無しさん:2013/11/04(月) 21:43:41.73
すいません、何分素人なもんでうまく伝えられてないかもしれません
ReadKeyですか、やってみます。ありがとうございました
886デフォルトの名無しさん:2013/11/04(月) 22:05:59.05
うーん、確かにConsole.ReadKey(true);で文字はでなくなりましたが
実際のwhileループ内では他の処理も行っているので、
処理がそこで止まってしまうReadKeyはちょっと使えませんでした
何か他に手段はありませんでしょうか?
887デフォルトの名無しさん:2013/11/04(月) 22:07:22.12
別のスレッドでやれ
888デフォルトの名無しさん:2013/11/04(月) 22:08:48.09
マルチスレッドしろ
889デフォルトの名無しさん:2013/11/04(月) 22:09:59.08
スレッドを分けるしかないですか
ありがとうございます、やってみます
890デフォルトの名無しさん:2013/11/04(月) 23:54:35.82
スレッドを分けるしかないですかって
スレッドわければいいだけなんだから
つべこべ言わずやれよ
891デフォルトの名無しさん:2013/11/04(月) 23:55:10.83
酷いなお前w
892デフォルトの名無しさん:2013/11/05(火) 01:26:39.15
Taskで書いてみた、糞コードで申し訳ない
http://ideone.com/Lyz2rX
893デフォルトの名無しさん:2013/11/05(火) 01:38:37.52
>>892
クッソワロタwwwwwwwwwwwwww
894デフォルトの名無しさん:2013/11/05(火) 01:40:37.71
くっさ
895デフォルトの名無しさん:2013/11/05(火) 01:43:00.87
くっさ
896デフォルトの名無しさん:2013/11/05(火) 01:51:13.21
くっさクッソワロタもやめろ
ここはVIPじゃねーんだぞボケが
897デフォルトの名無しさん:2013/11/05(火) 01:52:10.99
>>896
くっさ
898デフォルトの名無しさん:2013/11/05(火) 01:56:15.57
答え教えろやボケェ!
899デフォルトの名無しさん:2013/11/05(火) 02:15:17.01
自己解決しました
もうお前らには頼みません
さようなら
900デフォルトの名無しさん:2013/11/05(火) 02:18:47.74
>>899
騙り乙
下劣な品性だね
901デフォルトの名無しさん:2013/11/05(火) 03:47:56.68
ソースレベルで展開してくれるテンプレートないの?
Genericsは制限多くてまもとに書けない。
902デフォルトの名無しさん:2013/11/05(火) 06:21:06.05
>>901
そういうのはマクロっていうんだよ。
903デフォルトの名無しさん:2013/11/05(火) 07:49:01.86
>>884
GACにあるやつで更新されたものだけネイティブイメージ作成するんじゃね?
904デフォルトの名無しさん:2013/11/05(火) 08:07:48.38
どれぐらいの規模のツールを作るときにWPFでやろうって思う?
例えばテキスト検索ツールを作る場合WPFで作ります?
905デフォルトの名無しさん:2013/11/05(火) 08:16:42.92
>>890
IsKeyDownがSTAでしか使えないので、マルチにするとなると手直しする場所が多く
ためらっていました。申し訳ありません

>>892
ありがとうございます、参考にさせていただきます
906デフォルトの名無しさん:2013/11/05(火) 08:50:00.97
マルチでもSTAいけるよ
907デフォルトの名無しさん:2013/11/05(火) 09:05:19.19
gacとネイティブイメージキャッシュは別
908デフォルトの名無しさん:2013/11/05(火) 09:27:06.76
なんで
static virtual とか static override とか static abstruct とかできないのん?
909デフォルトの名無しさん:2013/11/05(火) 09:29:53.61
ネイティブ イメージ サービス
http://msdn.microsoft.com/ja-jp/library/ms165074(v=vs.110).aspx

キューオプション付きngenは後からサービスで実行されるって感じか?
910デフォルトの名無しさん:2013/11/05(火) 10:16:51.25
なんだGACは関係ないのか

ようするに自前でやらないといけないってことか
WindowsUpdate後にガリガリ始まるのは更新があった場合
更新のインストーラーがキューに追加してるってことかな
911デフォルトの名無しさん:2013/11/05(火) 10:54:48.84
>>908
どういう機能を持たせたいんで?
912デフォルトの名無しさん:2013/11/05(火) 14:54:48.33
bを変えるとsenderも変わる理由が分かりません。

private void button1_Click(object sender, EventArgs e)
{
Button b = (Button)sender;
b.Text = "hoge";
}

下の書き方だとaは変わらないのでキャストすると参照渡しになるのでしょうか。
string a = "fuga";
string b = a;
b = "hoge";

よろしくお願いします。
913デフォルトの名無しさん:2013/11/05(火) 15:00:40.86
上と下は全く違うだろ
Button a = new Button();
Button b = a;
b = new Button();
とか言ってるようなもんだぞ・・・
914デフォルトの名無しさん:2013/11/05(火) 15:05:50.85
おれも衝撃的だったな。リードオンリーにする方法がないんだから。
915デフォルトの名無しさん:2013/11/05(火) 15:06:03.34
>>912
なんじゃこりゃ……
916デフォルトの名無しさん:2013/11/05(火) 15:23:20.26
>>913
Button a = new Button(); と
Button a = (Button)sender; の違いがわかってないんだと思います・・・
917デフォルトの名無しさん:2013/11/05(火) 15:26:10.02
>>912
キャストがあろうがなかろうが同じだよ

private void Hage( Button button )
{
 Button b = button;
 b.Text = "hoge";

 // button.Text も "hoge"
}
918デフォルトの名無しさん:2013/11/05(火) 15:31:17.96
private void ChangeText( Button button )
{
 button.Text = "hage";
}

private void ChangeButton1( Button button )
{
 button = new Button();
}

private void ChangeButton2( ref Button button )
{
 button = new Button();
}

private void ChangeValue( Point pnt )
{
 pnt.X = 123;
}

private void ChangeValue2( ref Point pnt )
{
 pnt.X = 123;
}


さあどうよ
919デフォルトの名無しさん:2013/11/05(火) 15:34:36.38
Buttonがゲシュタルト崩壊したは
ぶっとん……
920デフォルトの名無しさん:2013/11/05(火) 15:42:11.27
>>917
>>918
理解出来ました。
分かり易いコードありがとうございます!

a.Text = "hage"; と
a = new Button(); は確かに全然違いますね・・・
921デフォルトの名無しさん:2013/11/05(火) 15:46:59.17
>>912
hogeなんて使うから、筋金入りのC/C++屋かと思いきやw
922デフォルトの名無しさん:2013/11/05(火) 15:54:38.59
public Action Foo()
{
string s = this.Text;
return () => { sを参照するコード }
}

最適化でsが削除されて、this.Textに直接アクセスするような最適化が起こる可能性はありますか?
要はFooを呼んだ時点でのTextの値をデリゲートで使用したいのですが
それは保証されるのか知りたいです。
923デフォルトの名無しさん:2013/11/05(火) 16:05:37.69
最適化に関する質問は専任の担当者がお答えします
924デフォルトの名無しさん:2013/11/05(火) 16:44:50.58
なんで英単語を中途半端に日本語に訳すんだろうな
Classをクラスって訳したり、Classのままでいいだろ
Delegateをデリゲート
まあここまでは日本人が聴きやすい発音に変えただけでまだましだが
こういうのも実は嫌い、英語で話すときに日本語訛りになる原因だからな

namespace 名前空間
こんなの訳す意味あるのか?小学生で覚える単語だろ
それに名前空間の方が打つのも発音するのも時間がかかるし
訳す意味がわからない

日本人って大変だと思うわ
namespace ネームスペース 名前空間
3つの表記を覚えなきゃならないんだから
925デフォルトの名無しさん:2013/11/05(火) 16:58:29.14
922は最近オブジェクトのコピーオンライト実装を
教えて貰ったので調子に乗って
「おまえらが知ってるかどうかテストしてやる(w」
って書き込んだ厨
926デフォルトの名無しさん:2013/11/05(火) 17:37:53.83
実装ってなんですか?
927デフォルトの名無しさん:2013/11/05(火) 18:07:38.50
>>924
おじいちゃんが読めないとゴーサイン出ないから仕方ない
928デフォルトの名無しさん:2013/11/05(火) 18:41:17.53
>>924
楽譜もそうなんだよな、、、
日本語と英語とドイツ語とイタリア語が混在することが多いw
929デフォルトの名無しさん:2013/11/05(火) 21:04:29.89
Comparer<自作クラス>.Default から 自作クラスComparer を取得したい場合ってどういう風に実装すればいいの?
930デフォルトの名無しさん:2013/11/05(火) 21:08:59.12
class 自作クラス : IComparable<自作クラス>
ってことじゃなくて?
931デフォルトの名無しさん:2013/11/05(火) 21:22:46.71
Comparer<自作クラス>.Default.GetType()ってことか?
知っても何の意味もないとは思うが
932デフォルトの名無しさん:2013/11/05(火) 21:54:48.93
>>929
Defaultを使ってる既存のクラスに自作Comparerを食わせたいってことか?
普通IComparer<T>使うときは引数にIComparer<T>を受け取るようにしておいて
オーバーロードで void Hoge() { this.Hoge(Comparer<T>.Default); } とするもんだ
これ以外のComparer<T>.Defaultのユースケースは無いと言ってもいい
設計ミス
933デフォルトの名無しさん:2013/11/05(火) 21:59:11.57
>>932
そういうこと

例えば、new List<自作クラス>.Sort()とかで、引数の指定を省略できないかなと・・
IComparableだとnull時の比較ができないし
やっぱ無理か
934デフォルトの名無しさん:2013/11/05(火) 22:07:26.91
IComparable側で同じロジックを使うようにしとけ
935932:2013/11/05(火) 22:09:39.30
思いついたんだが、拡張メソッド使ったらできそうだな

Sortとかのインターフェースがないからクラス毎の実装になるけど
936デフォルトの名無しさん:2013/11/05(火) 23:10:14.65
>>924,927,928
明治くらいからの先陣の流れかねえ
Delegateは委譲で理解の助けになったけど
未だに慣れないのは可用性availabilityだな

楽典だとメロディ、リズム、ハーモニーが旋律、律動、和声だっけ?
Square Waveが矩形波、Saw Waveが鋸歯状波とかイメージできないね
937デフォルトの名無しさん:2013/11/05(火) 23:55:48.30
流石にそれはイマジネーション不足じゃないかと
938デフォルトの名無しさん:2013/11/06(水) 08:18:51.40
>System.OutOfMemoryException: 種類 'System.OutOfMemoryException' の例外がスローされました。

x64にしたら解決しますか?
939デフォルトの名無しさん:2013/11/06(水) 08:58:20.72
残念なことにメモリ不足とは限らないので絶対じゃない
940デフォルトの名無しさん:2013/11/06(水) 09:25:03.09
x64にしてもダメでした。8GBメモリがあるのに3.6GBで落ちました。
941デフォルトの名無しさん:2013/11/06(水) 09:43:39.49
OutOfMemoryException
翻訳「おめえにやるメモリはねえよハゲが」
942デフォルトの名無しさん:2013/11/06(水) 09:47:04.30
x64にしてもあっちこっちに32bit制限があるから無理みたいだね。
943デフォルトの名無しさん:2013/11/06(水) 10:06:16.83
4ギガあると2ギガ以内で落ちるから大体半分くらいで落ちるんじゃないだろうか
944デフォルトの名無しさん:2013/11/06(水) 10:42:45.76
16GBなら8GBくらいまで使えるん?
945デフォルトの名無しさん:2013/11/06(水) 10:44:04.07
たぶん
946デフォルトの名無しさん:2013/11/06(水) 10:45:34.43
Listや配列を二分割にすればいけるのかな?
947デフォルトの名無しさん:2013/11/06(水) 11:51:45.96
4GBあっても4GBフルに使えるわけじゃないからな
948デフォルトの名無しさん:2013/11/06(水) 11:54:34.02
x86でも64bitOSなら3GB以上使えるってことで良いのかな?
949デフォルトの名無しさん:2013/11/06(水) 12:01:11.08
特に設定してなきゃ2GB上限だと思うが
950デフォルトの名無しさん:2013/11/06(水) 13:17:21.14
相手のIPアドレスがわかれば
そいつの回線に対して負荷かけることって可能?

スレチなのはわかってる
951デフォルトの名無しさん:2013/11/06(水) 13:50:32.95
>>950
出来る
952デフォルトの名無しさん:2013/11/06(水) 14:03:35.96
>>951
ありがとう
勉強してみる
953デフォルトの名無しさん:2013/11/06(水) 14:47:15.63
.NET4.5(64bit版)からの機能で
2GBより大きい配列を有効にするというものがある。
参考までに。
ただし配列要素の最大数はUInt32.MaxValueで変更なし。

*.exe.configの<configuration><runtime>で
<gcAllowVeryLargeObjects enabled="true" />
954デフォルトの名無しさん:2013/11/06(水) 15:40:18.07
超絶初心者です

TextBoxクラスはTextプロパティをオーバーライドしていますが
public override string Text { get; set; }

msdnでTextBoxが継承しているTextBoxBase クラスのプロパティを見ても
Textプロパティが見つかりません
一体全体どこのやつをオーバーライドしてるんですか?
955デフォルトの名無しさん:2013/11/06(水) 15:43:21.87
>>954
TextBoxBaseは何かを継承してるだろ
継承関係をどんどんたどって行け
956デフォルトの名無しさん:2013/11/06(水) 15:56:04.21
TextBoxBase.Text プロパティ
あった・・
早とちりしました・・
957デフォルトの名無しさん:2013/11/06(水) 15:58:19.57
Control.Text プロパティが
最終地点でした
ありがどうございました
958デフォルトの名無しさん:2013/11/06(水) 16:00:14.15
overrideがついてるものは
さらにoverrideできるってことですね
なるほどなるほど
勉強になりました
959デフォルトの名無しさん:2013/11/06(水) 17:55:48.18
C#初心者です。
配列などをなどを使用している訳ではないのですが、
process is terminated due to stackoverflowexceptionといったエラーが
起きてプログラムを実行できません。
何か解決策など無いでしょうか。
960デフォルトの名無しさん:2013/11/06(水) 18:02:42.51
おそらく無限ループ
自分自身を呼んでるか、交互に呼びあって一向に抜けない状況だろう。
961デフォルトの名無しさん:2013/11/06(水) 19:23:25.62
とりあえず呼び出し履歴ってウィンドウを開け
962デフォルトの名無しさん:2013/11/06(水) 21:13:14.88
>>950受信より送信帯域の方が低いから相手に負荷掛けてるつもりが
相手は余裕、こっちが先にダウンってオチ。だから複数から同時に攻めなきゃ
963デフォルトの名無しさん:2013/11/06(水) 21:22:15.41
ウィルスとか使って他のホストを乗っ取って攻撃に使うのが定石だよ
いわゆる踏み台攻撃ってやつだ
964デフォルトの名無しさん:2013/11/06(水) 21:27:21.20
くだらないことを教えなくてよろしい
965デフォルトの名無しさん:2013/11/06(水) 22:38:18.62
>>962
なるほど・・確かにそうだな

>>963
ウイルスは極力使いたくないな・・
966デフォルトの名無しさん:2013/11/06(水) 23:08:23.49
やろうとしてることが既にウィルス並にやっちゃ行けないことなんだが。気が付いてないのか?
967デフォルトの名無しさん:2013/11/06(水) 23:10:24.32
図書館に1Hzでアクセスするだけで犯罪者の世の中なら大差ない
968デフォルトの名無しさん:2013/11/06(水) 23:11:07.85
127.0.0.1に攻撃する気なんだろ
969デフォルトの名無しさん:2013/11/07(木) 00:47:00.71
ニコ生関連のツールはこぞってC#製なんだけど、何か理由でもあるの?
ログインライブラリがC#で作られているからかな
970デフォルトの名無しさん:2013/11/07(木) 00:53:53.63
>>969
最初に作り出した奴がC#だったから
971デフォルトの名無しさん:2013/11/07(木) 02:28:45.73
C#でVMWareみたいなアプリを作りたいのですが
どこから調べていけばいいの?
仮想OSを動かすようなコントロールがどこかにあるんですか?
972デフォルトの名無しさん:2013/11/07(木) 06:20:11.12
ツマンネ
973デフォルトの名無しさん:2013/11/07(木) 07:00:36.71
アセンブリでも勉強してろ
974デフォルトの名無しさん:2013/11/07(木) 07:23:41.67
>>971
有りますよ
975 ◆qp.91yt8ZY :2013/11/07(木) 15:07:18.09
どうしてもわからないので教えて下さい

DataGridViewでキーボードの↓を押すと選択が移動しますが
選択はそのままでフォーカスだけ移動するようにしたいのですが
どのようにすればいいですか?

↓、Space、↓、↓、Space

このようなキー操作で2行目と4行目を選択状態にしたい
976デフォルトの名無しさん:2013/11/07(木) 15:41:32.95
Ctrl
977 ◆qp.91yt8ZY :2013/11/07(木) 16:30:01.03
Crtl+↓のことを言っているんでしょうか?
最後の行に飛ぶだけでした
978デフォルトの名無しさん:2013/11/07(木) 18:25:00.49
アセンブリにバージョンがある
クラスにはバージョンを指定する属性ってないの?
979デフォルトの名無しさん:2013/11/07(木) 18:29:28.19
作ればあるよ
認識してどうこう動作するってのは無いが
980デフォルトの名無しさん:2013/11/07(木) 18:45:37.64
初心者です。
Button.Click イベント
Button コントロールがクリックされたときに発生します。

とありますが
発生とは具体的に何が行われているんですか?
981デフォルトの名無しさん:2013/11/07(木) 18:48:18.63
普通のデリゲート実行とおんなじ
982デフォルトの名無しさん:2013/11/07(木) 19:11:59.76
そこらはウィンドウプロシージャでも調べろ
983デフォルトの名無しさん:2013/11/07(木) 21:05:21.15
Button.OnClickメソッドが呼ばれたに決まってるだろ! jk!
984980:2013/11/07(木) 21:18:23.63
うまく説明できませんが
メソッド呼ぶときはTest();というように書くので
クリックイベントはClick();がどこかで呼ばれてるんですか?
985デフォルトの名無しさん:2013/11/07(木) 21:25:29.15
然様
986デフォルトの名無しさん:2013/11/07(木) 23:58:25.60
このスレ役に立たないね
虫けらが初心者いじめて楽しむだけの陰気なスレ
987デフォルトの名無しさん:2013/11/08(金) 00:05:28.83
981の言う通りだぞ
もしWinFormsを使ってるならDesigner.csファイルをのぞいてみろ

イベントハンドラの仕組みをデリゲートを利用して実現してるが
簡単に言うとシステムから呼ばれてる
988デフォルトの名無しさん:2013/11/08(金) 00:08:54.61
>>987
ちげーよ
フレームワークじゃん

嘘教えんなよ
989デフォルトの名無しさん:2013/11/08(金) 00:11:09.45
WndProcの非常に薄いラッパーなので、
システムというのもあながち間違いではない
990デフォルトの名無しさん:2013/11/08(金) 00:14:56.22
つか、奴は>>986を言いたいだけのいつもの屑だろ
991デフォルトの名無しさん:2013/11/08(金) 00:54:31.40
.NETはWin32APIのラッパーじゃないの?
WndProcにDefWndProcまであるし
少ししか触ったことないがJavaにはそういうのないよね?
992デフォルトの名無しさん:2013/11/08(金) 01:02:27.71
SWTにはあるよ
993デフォルトの名無しさん:2013/11/08(金) 01:52:23.98
次スレはよ
994デフォルトの名無しさん:2013/11/08(金) 02:32:40.62
この説明の下手さ加減といったら・・・
C#のデリゲートを説明するのにC++やJAVAを例えに出すのと同じ
ボタンのイベントってなんですか?レベルの人にデリゲートだWndProcとか言って
説明できたつもりなのかよ・・・
プログラマってコミュ力低いなとつくづく思う
995デフォルトの名無しさん:2013/11/08(金) 02:49:16.47
俺がわかりやすく答えよう
>>980
イベントはチャイムみたいなものだよ
チャイムが鳴った場合、どう対応するか?
その部分を自分で書くことになるわけ

コントロールがあるイベント(ボタンクリックイベントなど)が発生したことを通知してくれるお陰で
プログラマはそのイベントにあった処理書いて実行することができる

でも必ずイベントが発生するとは限らない
ユーザーがボタンを押すとは限らないし、どのタイミングで押すかどうかもわからない
仮に押されたとしても何の機能も用意していなくてもエラーにならないようにしたい
そういうときにイベントというものが使われる
996デフォルトの名無しさん:2013/11/08(金) 03:05:45.25
>>995
すんばらしい
997デフォルトの名無しさん:2013/11/08(金) 03:15:24.26
先にも述べたようにコントロールとコード間はイベントで対応できるわけだが
コード同士でもそういった機能を使いたいときがある

例えば、「Delegate」という文字列を検索するクラスを作り
それを別のクラスから利用する場合を考えてみよう

当然のごとく検索方法をいろいろ変えてみたくなるだろう
大文字小文字を区別させたい、正規表現を使いたいなど
その場合、検索クラスを直接書き換えることで対応もできるが
他のプロジェクトからもその検索クラスを利用していた場合、
検索クラスのコードを変えてしまうとエラーやバグの原因になる
結局他のプロジェクトも書き換えないといけなくなるハメになる

しかし別のクラスから検索する方法を与えることができれば、検索クラスはいじらなくて済むようになる
検索クラスを直接いじらなくても、検索方法を変えられるようになれば
どのプロジェクトからも利用できる。つまり再利用性が高いと言える
もちろん検索方法を変えないで、デフォルトの検索方法を使ってもいい
このようにコード間である機能を与えたりするときにデリゲートを使う

○具体的なプログラムの流れ
1.メインクラスで検索クラスの検索メソッドを実行する
2.検索クラスは検索方法が新たに登録されているかどうかを確認する(ここはボタンクリックイベントが発生する部分に該当)
3.登録されている場合、検索クラスはそちらに検索の方法を任せることにする(委譲する)
4.メインクラスで検索方法を示したコードが実行される(クリックイベントハンドラに該当)
5.検索クラスはメインクラスで示した検索方法に基づき検索された結果の値をメインクラスに返す
998デフォルトの名無しさん:2013/11/08(金) 03:26:47.61
例えばイベントやデリゲートに該当する機能がなかったとする
この場合どういうことが起きるか

マイクロソフトはボタンコントロールを設計する段階で
クリックされるとどのような振る舞いをするのかを予めプログラムしておかなければいけなくなる
当然すべてのケースを見越してプログラムすることは不可能
これは検索クラスを作る時点であらゆる検索方法をすでに記述しているのに該当する
(まあただ検索する程度なら予め記述しておいてもいいだろうけど)
あらゆる機能を盛り込んだ複雑なクラスを作るより、
必要なときに必要な機能だけをあとで追加できる柔軟で簡潔なクラスを作ったほうが楽なのは言うまでもない

初心者はとりあえずこういうものなんだと頭の片隅においておくだけでいいと思う
疑問が次々浮かぶだろうけどその度に立ち止まるより、とりあえずひと通り学習したほうがいいと思うよ
999デフォルトの名無しさん:2013/11/08(金) 05:04:50.50
コールバック
あらかじめ関数に、独自の処理を書いておいて、
それをいづれかのタイミングで、OSから呼び出してもらう
1000デフォルトの名無しさん:2013/11/08(金) 08:47:17.35
ふらっとVisual C#,C♯,C#(初心者用) Part108
http://toro.2ch.net/test/read.cgi/tech/1383867970/
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。