07/09/22 23:43:15
>>157
うんそうだね~そうだね~
160:デフォルトの名無しさん
07/09/23 00:20:08
一日に一回、「ゆとり」を含んだレスを見るんだが
もう少し気の利いたレスはできんのかなぁと思う。
161:デフォルトの名無しさん
07/09/23 00:20:36
ゆとりだから
162:デフォルトの名無しさん
07/09/23 00:21:28
>>160
心のゆとりがなさ杉
163:デフォルトの名無しさん
07/09/23 00:22:11
ん?
CodeProjectって投稿されてるコードに統一的な共通のEULAみたいの掲げてたっけ?
見たことないが。
まあ、>>158-159みたいのは自信がないから言質をとられないような煽りしか
書けないんだろうけどw
164:デフォルトの名無しさん
07/09/23 00:24:01
というか、ゆとり教育以前の教育を受けてる人間ってもう40代後半のはずなんだけどねw
その程度のことも知らずに「ゆとり」とかいう言葉を安易に使う人間のお里は知れてるでしょ。
165:デフォルトの名無しさん
07/09/23 00:25:46
c#はc言語のプログラムのようにコンピュータが暴走することがありますか
166:デフォルトの名無しさん
07/09/23 00:27:05
>>164
>お里は知れてるでしょ。
使い方おかしいよ
167:デフォルトの名無しさん
07/09/23 00:28:26
>>165
暴走って具体的に何?
168:デフォルトの名無しさん
07/09/23 00:33:26
>>164
70年代後半からゆとり教育が段階的に開始されたんじゃなかった?
40代はまだまるまるゆとり教育以前じゃない?
まぁ、どっちにしろ、いわゆる「ゆとり世代」といわれるものを勘違いしているんだろうけどw
169:デフォルトの名無しさん
07/09/23 00:33:44
>>166
頭悪いな。
別におかしくないよ。
本気で言っているなら単にお前さんが日本語に疎いだけ。
本当にお里が知れるよまったくw
170:デフォルトの名無しさん
07/09/23 00:37:11
ゆとり世代=1987年4月以降
171:デフォルトの名無しさん
07/09/23 00:40:36
>>169
本当に気づいてないんだな
指摘されたら辞書くらい見てみなよ
172:デフォルトの名無しさん
07/09/23 00:56:19
>156
ものによる。
GPLとかBSDとかライセンスの記述があるのは話が早いが、ものごとに統一されてないので一つずつ確認しろ。
173:デフォルトの名無しさん
07/09/23 01:21:07
>>171
辞書ねえw
なるほど、では具体的に「どこが」、「いかなる理由で」おかしいか書いてみな。
174:デフォルトの名無しさん
07/09/23 01:37:38
スレ違いに気づけないバカがいるな
175:デフォルトの名無しさん
07/09/23 01:47:18
ゆとりって書くとやけに反応する奴が居るな
176:デフォルトの名無しさん
07/09/23 02:47:42
日本語の勉強は日本語スレでやれ
177:デフォルトの名無しさん
07/09/23 03:40:18
ネタじゃないのか…?
178:デフォルトの名無しさん
07/09/23 13:13:45
現行スレ
C#, C♯, C#相談室 Part42
スレリンク(tech板)
179:デフォルトの名無しさん
07/09/23 15:24:44
ソースあるやつは改変して使えばいいだろ
自分のものにしてしまえ
180:デフォルトの名無しさん
07/09/23 15:36:20
現行スレ
C#, C♯, C#相談室 Part42
スレリンク(tech板)
181:デフォルトの名無しさん
07/09/23 15:38:57
こっちでいいや
182:デフォルトの名無しさん
07/09/24 10:28:56
string Hogeのプロパティを作り値が変更された時
OnTextChangedみたいなイベントOnHogeChangedを発生させる場合って
どうすれば良いのでしょうか?
プロパティ内でif文でイベントを発生させようとしましたがsenderとかが取得で格好悪いです。
又、色々調べたらPropertyChangedってのが近い気がしますがあまり実体がわかりませんでした。
ここら辺りで何か参考になる情報なサイトを知ってたら教えて下さい。
183:デフォルトの名無しさん
07/09/24 11:31:06
日本語でお書きください。
184:デフォルトの名無しさん
07/09/24 11:42:44
現行スレ
C#, C♯, C#相談室 Part42
スレリンク(tech板)
185:デフォルトの名無しさん
07/09/24 11:45:44
>>182
URLリンク(www.atmarkit.co.jp)
186:デフォルトの名無しさん
07/09/24 12:04:42
>>185
レスありがとうございます。
通常のイベントに関しては理解しているつもりです。
プロパティの変更通知の機構をどのように作るのが最適かと悩んでいます。
又、上記のサイトではプロパティを変更したsenderの取得には言及してません。
187:デフォルトの名無しさん
07/09/24 12:09:08
sender は普通に this だろ
188:デフォルトの名無しさん
07/09/24 12:29:43
>通常のイベントに関しては理解しているつもりです。
いや、君理解してないから絶対にw
なんで分からなかったらまず地道に学習しようとは思わないのかな
この手の人って。
189:デフォルトの名無しさん
07/09/24 13:05:19
>>187
レスありがとうございます。
thisだと自分自身になるんではないでしょうか?
こちらの思惑としてはプロパティを変更したオブジェクトがsenderに入って欲しいと考えています。
例えばボタンクリック時にプロパティを変更する処理を記述したら
OnHogeChangedのsenderにはボタンのオブジェクトが入ってきて欲しいのです。
190:デフォルトの名無しさん
07/09/24 13:13:06
自分はそれようのスマート型を作った。
191:デフォルトの名無しさん
07/09/24 13:14:04
>>189
senderはイベントを発行しだオブジェクトだよ。
そんな気持ちの悪いことをしちゃならん。
192:デフォルトの名無しさん
07/09/24 13:15:39
>>189
senderにはボタンを入れればいい
193:デフォルトの名無しさん
07/09/24 13:16:31
>>189
普通そういう情報はEventArgsに入れる
194:デフォルトの名無しさん
07/09/24 13:33:41
イベントの話題なので前から思ってた疑問を。
イベントのsenderはなぜobjectなんですか?
たとえばイベントを発行したのがButtonならsenderの型もButton、
またControlから継承したクラスのイベントならsenderはControlでもいいように思うのですが。
195:デフォルトの名無しさん
07/09/24 13:35:36
シグネチャーを一緒にするため
196:デフォルトの名無しさん
07/09/24 13:39:57
シグネチャを統一して何かメリットがあるんですか?
197:デフォルトの名無しさん
07/09/24 13:42:44
今、グラフィック描画の勉強をしているのですが、質問させてください。
PictureBoxに線を描いてみようと思ったのですが、どうも挙動がおかしいのです。
Form_Paintに線描画のコードを書いたのですが、最初は線が表示されず、
ウィンドゥを左右に振ると線が表示されるようになるんです。
さらに振っていると表示されている線の位置も移動します。
何かコーディグが足りてないんでしょうか?
198:デフォルトの名無しさん
07/09/24 13:42:53
>>194
そうするとcovariantなデリゲート型の代入が出来なくなるから
199:デフォルトの名無しさん
07/09/24 13:46:21
>>194
クラス毎に作るのはめんどいから…
200:デフォルトの名無しさん
07/09/24 13:56:28
if(!ゆとり世代)
{
System.Console.WriteLine("じじい");
}
201:デフォルトの名無しさん
07/09/24 14:40:42
>>198
covariantなデリゲート型を代入しないといけない乃至したほうがいい場面ってあるの?
202:デフォルトの名無しさん
07/09/24 14:52:56
ある。以上。
203:デフォルトの名無しさん
07/09/24 14:54:22
たとえば?
204:デフォルトの名無しさん
07/09/24 14:56:48
なんでイベントハンドラの話でコバリアントが出てくるのかな?
205:デフォルトの名無しさん
07/09/24 14:59:50
イベントハンドラが出来たのが1.0時代だから。
206:デフォルトの名無しさん
07/09/24 15:01:35
>>197
Refresh()
207:デフォルトの名無しさん
07/09/24 15:02:42
まあボタンクリックってのがボタンコントロールよりは汎用的だからってのもあるかしらん。
あらゆるボタンクリックを起こすコントロールがボタンコントロールから派生するとはいえんからな。
208:デフォルトの名無しさん
07/09/24 15:03:26
>>194のようになっても困らないしキャストの手間が省けて便利だよね
209:デフォルトの名無しさん
07/09/24 15:05:32
>>208
たしかにそうだね
210:デフォルトの名無しさん
07/09/24 15:12:31
>>198
covariantなデリゲート型を代入しないといけない乃至したほうがいい場面ってあるの?
あるならたとえばどんな場面?
211:デフォルトの名無しさん
07/09/24 15:45:43
現行スレ
C#, C♯, C#相談室 Part42
スレリンク(tech板)
212:デフォルトの名無しさん
07/09/24 15:51:15
>>187-193
考えてを整理してみたら187さんが言うようにthisを渡せば良いって事に気付きました。
ありがとうございました。
でもこういうプロパティ変更のイベント処理ってsetでやるものでしょうか?
最初に書いたようにPropertyChangedみたいにすべてのプロパティの変更を統括管理する事って出来そうなんですけど無理なんでしょうか?
213:デフォルトの名無しさん
07/09/24 15:51:47
ここでいいよ
214:デフォルトの名無しさん
07/09/24 16:00:18
>>212
INotifyPropertyChanged にしても結局各プロパティの set でやることになる。
ていうかもともとイベントを起こせるようにするのもプロパティの必要性の一つだから。
215:197
07/09/24 16:12:49
>>206
Form_Paintイベントの最後にPictureBoxのRefresh()を追加すると、
表示されなくなりました。
正確には一瞬のみ表示されてすぐに消えるという状態です。
追加する箇所が間違えているんでしょうか?
216:デフォルトの名無しさん
07/09/24 16:27:21
>>215
Graphicsオブジェクトを変なとこから取得してるんだろう。PaintEventArgsのを使え。
217:197
07/09/24 16:38:21
>>216
解決しました。
ありがとうございました。
218:デフォルトの名無しさん
07/09/24 16:42:39
どう解決したのか書けちんかす。
219:デフォルトの名無しさん
07/09/24 16:51:58
PaintEventArgsのを使え。
以外に何が…
220:デフォルトの名無しさん
07/09/24 16:54:41
ここは基地外隔離スレです
現行スレ
C#, C♯, C#相談室 Part42
スレリンク(tech板)
221:デフォルトの名無しさん
07/09/24 17:18:51
んじゃここでいいや
222:デフォルトの名無しさん
07/09/24 21:41:38
>>214
レスありがとうございます。
プロパティのset内でイベントを発生させるのに迷いがなくなりました。
ありがとうございました。
223:197
07/09/26 21:53:20
>>218
すみません。
Form_PaintイベントでPictureBoxをRefreshして
PictureBox_PaintイベントでPaintEventArgsからGraphicsオブジェクト取得するようにしたら
きちんと描画できました。
説明が不足してご迷惑をおかけしました。
今後は気をつけます。
どうも失礼しました。
224:デフォルトの名無しさん
07/10/07 05:08:40
public ArrayList Hoge
{
set
{
ary = value;
}
get
{
ary.Sort();
return ary;
}
}
みたい感じでプロパティつくって
foreach(object o in Hoge)
て感じでまわすと
コレクションが変更されました。列挙操作は実行されない可能性があります。
とかって例外が発生するんですけど原因はなんなんですかね?
foreach中で、プロパティ内部でsortする配列つかっちゃいけないんですか?
225:デフォルトの名無しさん
07/10/07 08:14:15
>>224
逆になんでそんなことがしたいの?
226:デフォルトの名無しさん
07/10/07 08:45:05
foreach中に配列弄っちゃいかんよ。
227:デフォルトの名無しさん
07/10/07 12:27:10
それ以前に224のコードは意味不明でしょ。
何が「みたいな感じ」なんだよw
まあ、何にハマってるかは分からないでもないけど。
でもIEnumerable 実装するクラスを自分で書いているにもかかわらず224みたいな
寝ぼけたこと言ってるとしたら、たぶん基本的に適正がないんだろうね。
だって普通は原因に思い当たるだろ。
228:デフォルトの名無しさん
07/10/07 14:36:08
またお前か。
229:デフォルトの名無しさん
07/10/07 15:09:41
毎回「適正がない」とか煽ってるアホはなんなの?
230:デフォルトの名無しさん
07/10/07 15:14:53
>>225
クラス側でsortしとけばプロパティ呼び出して使う側でいちいちSortしなくてもいいんかなて。
なんとなくforeach中でいじるのがだめてのはわかるけど、
foreachでまわす一番最初でsortするんだからいーじゃんとも思ったので。
>>227
なにこの馬鹿。
具体的にどんな問題がおきてるかききてーからかいてんだろが。
低学歴猿はいちいち現れないでいいですよ。
こんな程度で適正もくそもねーだろが。おまえは人としての適正がないね。
231:デフォルトの名無しさん
07/10/07 15:15:53
別に煽ってるわけじゃない。
忌憚のない本心を言ってるだけ。
そうコミュニケーションが「可能」なのは確かに2chの負の側面ではあるが、
それは同時によい点でもある。
俺は冗談抜きで100%良心で言ってるんだけどね。
だって自分に向いてないことを選択するほど辛辣な人生ってないだろ。
それとも224みたいなことを言ってる人間にプログラマとしての適性があると思う?
ありえないでしょ。
232:デフォルトの名無しさん
07/10/07 15:22:37
>>231
おれは職業プログラマーじゃねーよ。猿。
アドバイスしてあげるけどその発想の狭さがプログラマーはもちろん
社会人としての適正がないね。
>そうコミュニケーションが「可能」なのは確かに2chの負の側面ではあるが、
>それは同時によい点でもある。
ただのBBSに対して何を語っているのかね。この子は。
233:デフォルトの名無しさん
07/10/07 15:24:49
あのぉ、ここには色んな人が来るわけで・・・
仕事でしている人もいれば、趣味でやっている人、勉強でやっている人とかね・・・
234:デフォルトの名無しさん
07/10/07 15:26:03
231見たいなのはきっと会社ですげー辛い目にあってるんだろうな・・・
235:デフォルトの名無しさん
07/10/07 15:33:50
231は自分がプログラマーに適してるとか思ってるのかな?
こういうのが上司になったら。。。
236:デフォルトの名無しさん
07/10/07 15:49:11
>>230
SortedListじゃあかんの?
仮にやるとしたらSet時にソートするなぁ・・・
しかしお前らこういう時だけ活気付くのなw
237:デフォルトの名無しさん
07/10/07 19:42:01
まあ最後の更新以降、最初の取得時のみソートするとかならわかる気もするけど。
なんでエラーになるわけ?
なんか変な操作して無い?
これだけじゃそもそもエラーにならんと思うけど。
238:デフォルトの名無しさん
07/10/07 19:45:17
そうか繰り返し中にHogeプロパティにアクセスして無い?
今の実装ならそれやっちゃうとエラーになると思うけど。
239:デフォルトの名無しさん
07/10/07 20:48:13
こうすれば単純な話
ArrayList ar = new ArrayList();
ar.Add("aaa"); ar.Add("bbb"); ar.Add("ccc");
IEnumerator it = ar.GetEnumerator();
ar.Sort(); //ar.Add("d"); //ar.RemoveAt(0); //ar[0] = "xxx"; // 変更を加えると
if (it.MoveNext()) Console.WriteLine(it.Current); // 例外が起きるのはここ
240:デフォルトの名無しさん
07/10/07 21:36:39
>236
重複を認めたいけどSortしたい場合はSortedListじゃだめだね。
実際には重複しないケースになりそうな気がするけど。
241:デフォルトの名無しさん
07/10/08 02:59:41
Dictionaly<>はList<>みたいに要素の順序を保持してくれないわけだが、
仮に順序の保持を行うDictionaly<>を作るとなると、
どんな実装が理想的なんだろう?
やり方はいろいろあるんだろうけど、どれがいいのか分らん。
そもそも順序はListで持って、ハッシュテーブルとしてはDictionalyで別々に持つべきなのか?
ちょっとお知恵を貸してちょーだい。
242:デフォルトの名無しさん
07/10/08 03:08:11
>>241
Sorted Dictionary でググッてみてから言ってる?
243:デフォルトの名無しさん
07/10/08 03:11:48
>>242
わかってないのにつまらんこと言うな。
244:デフォルトの名無しさん
07/10/08 03:20:13
何がわかってないか説明してもらおうか
245:241
07/10/08 03:30:09
仮に、
"A" , "hoge"
"C" , "hogegege"
"B" , "hogege"
というデータをSortedDictionalyにいれると、キーでソートされてしまって、
"A" , "hoge"
"B" , "hogege"
"C" , "hogegege"
という順序になってしまうわけです。
通常のDictionalyだと、順序は保障されず、どういう順番で返ってくるかさえ分りません。
これを最初の順序のまま、保持してくれるDictionalyの実装の方法についてお聞きしています。
246:デフォルトの名無しさん
07/10/08 03:35:24
Dictionary
247:デフォルトの名無しさん
07/10/08 03:38:20
>>243
いいからググってみろカス
248:241
07/10/08 03:39:30
>>246
あうち
さっき打ち間違えてから、なんか変な癖がついちゃってさっきからgoogleとコンパイラに怒られつづけてます。
そういうことって、ない?俺だけかorz
249:デフォルトの名無しさん
07/10/08 03:52:52
>Sorted Dictionary
ああよくみたら空白入ってんのなw
でも方向がおんなじのばっか引っかかるけど。
おれは面倒だからOrderedDictionaryでお茶を濁してる。
250:デフォルトの名無しさん
07/10/08 03:54:26
だってどう考えてもSortとちがうし
251:241
07/10/08 04:11:05
>>249
ありがとうございます
俺も面倒くさくなったので、とりあえずはこれでお茶を濁そうかと。
OrderedDictionary、こんなものもあるんだなー。
でも、もし理想的な実装方法というのがあれば、技術の参考までに知りたい。
252:デフォルトの名無しさん
07/10/08 09:53:03
内部にList持って列挙のときだけはListに働いてもらうのが一番簡単だね。
その無駄が許容できるのなら。
253:デフォルトの名無しさん
07/10/08 16:23:28
>>250
Sortでもかまわんだろ。
なにかの順番を適用するにはちがいない。
254:デフォルトの名無しさん
07/10/08 19:53:42
いやそういうことじゃないだろ。
後でインデックスでアクセスするために、
追加した順を覚えておいてほしいって話だろ?
255:デフォルトの名無しさん
07/10/08 20:01:23
>>254
それならもうDictionaryとListを二重に保持するしかないな。
例えばこんな感じ?
class MapWithList {
Map map;
List list;
public void add(Object key, Object value) {
map.put(key, value);
list.add(key);
}
public Object getWithKey(Object key) {
return map.get(key);
}
public Object getWithIndex(int i) {
map.get(list.get(i));
}
}
テストコンパイルしてないから実際に使えるか知らんが、
ようはこういうことがしたいんじゃない?
256:デフォルトの名無しさん
07/10/08 20:33:40
おい一人タイムスリップしてるぞ
257:デフォルトの名無しさん
07/10/08 21:22:45
>>255
だからそれは任意で追加できる機能だろが
258:デフォルトの名無しさん
07/10/08 21:23:16
まちがえた>>254な
259:デフォルトの名無しさん
07/10/08 21:23:31
せめてgenerics使おうぜ
260:デフォルトの名無しさん
07/10/09 01:04:42
TreeViewで、NodeでダブルクリックしてもExpand(展開)もColapse(収縮)も
しないようにするにはどうしたらいいでしょう?
261:デフォルトの名無しさん
07/10/09 01:08:40
Beforeのイベントでキャンセルすりゃいいんじゃね
262:デフォルトの名無しさん
07/10/09 02:44:26
>>261
あーなるほど!そういう手があったんですね!!
ありがとうございました!
263:デフォルトの名無しさん
07/10/09 21:09:49
TreeViewついでに教えてください、ListViewだとアイコンに透明色を使った部分が
透明になりますが、TreeViewだと透明になりません、BackColorを設定すると
TreeViewの方は透明で透けるはずのところが白で塗られていました。これは
TreeViewのプロパティの設定で透明になるでしょうか?
264:デフォルトの名無しさん
07/10/09 21:13:48
URLリンク(proforceone.web.fc2.com) ⇒ Processed input data
エンタ[263.]
お笑い[4,010]
zzztv[247]
yoshimotokogyo[141]
URLリンク(proforceone.web.fc2.com) ⇒ Calculation processing
d=$.split("\n");for(j=0;d.length>j;j++){s=d[j].substring(0,l=d[j].indexOf("["));
s=encodeURIComponent(s);n=d[j].substring(l+1,d[j].indexOf("]")).split(".");
n=eval(n[0].split(",").join(""));n=(n-n%20)/20+(n%20>0);br();
for(i=0;n>i;i++){write("http"+"://youtube.com/results?search_query=");
write(s+"&search_sort=video_date_uploaded&page="+(i+1));br();}}br();
265:デフォルトの名無しさん
07/10/09 21:33:17
コピペ君って馬鹿だな、まで読んだ。
266:デフォルトの名無しさん
07/10/10 09:51:13
VS2005で開発をしているのですが、.NET1.1でプログラムを動かすにはどうすればいいですか?
.NET2.0で追加されたクラスやメソッドを使用しなければ、普通に動くんでしょうか。
267:デフォルトの名無しさん
07/10/10 09:59:28
>>266
マニフェストをいろいろいじるという方法もありますが現実的な方法ではないので
2.0から1.1へは不可能と思ってください。
おとなしく2003で再コンパイル。
268:デフォルトの名無しさん
07/10/10 19:45:14
>>267
即レスしてもらったのに、レスが遅れてすみませんでした。
そうですか。大人しく再コンパイルすることにします。
269:デフォルトの名無しさん
07/10/12 16:25:58
質問です、よろしくお願いします!
あるメソッドやプロパティ、デリゲートといった処理単位内で、
その処理単位自身の名称を知ることができるような、.NETのクラス
があればうれしいのですが、もしありましたらクラス名を教えてください。
270:デフォルトの名無しさん
07/10/12 16:34:18
>>269
処理MethodならSystem.Reflection.MethodBase.GetCurrentMethod().Nameでいける
271:デフォルトの名無しさん
07/10/12 16:34:24
スタックトレース
272:デフォルトの名無しさん
07/10/12 16:36:00
MethodBase.GetCurrentMethodとかそんなん?
273:デフォルトの名無しさん
07/10/12 16:43:41
>>270 おお。
こういう便利メソッドとかをカテゴリごとに網羅してくれる辞書的な本とか誰か作ってくれんかね・・・
大全のもうちょっとしっかりしたやつ。
274:デフォルトの名無しさん
07/10/12 18:38:02
「網羅」した途端にその検索性や索引性はクラスライブラリのリファレンス、
つまりMSDNと同じレベルになると思うんですが。。
275:269
07/10/12 18:42:16
>>270-272
どうもです!こんな便利なクラスがあるのですね!!
ありがとうございました、勉強してみます!!
276:デフォルトの名無しさん
07/10/12 19:46:49
>>274 いや、MSDNがわかりにくいのはすべてを同列に書いているからであって、端折ってもいいからそのnamespaceにあるものの大まかな関係などが出てくれてればいい。
そうすればどこら辺を調べればいいか当たりがつくから。
277:デフォルトの名無しさん
07/10/12 20:02:56
だからnamespaceっていうのがそもそもカテゴリを表していると思うんですけど。。
278:デフォルトの名無しさん
07/10/12 20:13:34
>>277
>>276がいってるのはネームスペース内のクラスの関係じゃないのか?
そんなこまかなことはともかく、MSDNが直感的に扱いづらいのは同感。
Web上のボランティアな情報も少ないし、余計に扱いにくいなあ。
VS買ったらネームスペースのマップみたいなポスターついてきたけど、あんなのでわかる人いるの?
279:デフォルトの名無しさん
07/10/12 20:27:36
>>278
そうそう。namespaceないで、まぁまたいでもいいんだが、クラス等がどういうことするときにどう関係するのかとかがつかめん。
280:デフォルトの名無しさん
07/10/12 20:28:42
いや276が言っているのは、要は欲しいものをエスパーしてくれるリファレンスが
欲しいって事でしょ。
そんなの不可能だわな。
俺様にとって必要で便利なクラスのインデックスが欲しい、
って言ったって何が必要で便利かは「俺様」によって違うじゃん。
そもそも、だからこをクラスライブラリはあのボリュームになっているわけで。
281:デフォルトの名無しさん
07/10/12 20:39:52
>>280 低脳は黙ってろ
282:デフォルトの名無しさん
07/10/12 20:40:09
はぁい
283:デフォルトの名無しさん
07/10/12 20:52:33
関連クラスへのハイパーリンクを
たどってグラフ化してくれるプログラムでも作ればいいんじゃね
284:デフォルトの名無しさん
07/10/12 20:54:24
だからどのクラスとどのクラスがリンクするかは用途の関数だろってw
本当にプログラマが言ってるのかね
285:デフォルトの名無しさん
07/10/12 20:56:02
>>280
量が多いからいいとは限らない。
むしろほしい情報が直感的にわかりやすく手に入る方が、重要なんじゃないか?
どれだけ情報があろうが、その格納場所がわからなければないのと同じだし、
それにMSDNの情報は、多くが重複してたり余計なスペースや下手な配置がされてたりする。
>>276がエスパーを要求してるとは思わないが、
仮に>>280のいう"ほしい機能に必要なクラスを教えてくれるリファレンス"がほしいっていうのも、
あながち大それた要求ではないと思う。
286:デフォルトの名無しさん
07/10/12 20:56:45
>>284
日本語でおk。
287:デフォルトの名無しさん
07/10/12 21:00:29
>>285
アッタマ悪いな本当w
だから何が「欲しい情報」かは人によって違うんだよ。
だから、そうでないならクラスライブラリがあんなに肥大する理由がないだろう。
288:デフォルトの名無しさん
07/10/12 21:47:21
ま た お ま え か
289:デフォルトの名無しさん
07/10/12 23:48:41
実際個人個人の願望を集約したものは単なるごった煮だと思うけどね。
MS Officeとか。
要望に上がる新機能の大半が既に実装済みという。
>>273
とりあえずこの辺一通りみてみたら?
URLリンク(homepage3.nifty.com)
あと、VBのコードスニペットは
.NETで何ができるかを調べるときには意外と参考になるよ。
URLリンク(salv.miscnotes.com)
URLリンク(salv.miscnotes.com)
290:デフォルトの名無しさん
07/10/13 00:01:15
>>289
たしかにあれだけごちゃごちゃしてれば、納得のいく話だな。
もはや今日のソフトウェアデベロッパーは、要求される機能を追加していくだけでは駄目だって好例かもね。
291:デフォルトの名無しさん
07/10/13 02:11:18
>アッタマ悪いな本当w
これいうやつって大概伝達能力不足だよな・・・
292:デフォルトの名無しさん
07/10/13 02:32:12
>アッタマ悪いな本当w
こういうのをいうやつで頭がよさげにしゃべるやつを見たことがない。
自分のつたない言語能力で、そもそも伝達しようとしている事柄が間違ってることさえあ利、相手が理解しないからといって相手が一方的に頭が悪いと考えてるんだろうな
293:デフォルトの名無しさん
07/10/13 05:25:25
マ板でやれ
294:デフォルトの名無しさん
07/10/13 12:48:13
DataGridViewで、外形をResizeしたとき、中のカラムの幅も
それに自動で連動してゴムみたいに伸び縮みするようにできれば
と思うのですが、プロパティ設定でできるでしょうか?
295:デフォルトの名無しさん
07/10/16 08:39:05
発行しようとすると以下のようになるのですが、どうしたら良いのでしょうか?
特に変わった事はしていないはずなのですが・・・
署名中にエラーが発生しました: bin\Release\app.publish\\setup.exe の署名に失敗しました。
296:デフォルトの名無しさん
07/10/18 16:25:18
発行しようとすると以下のようになるのですが、どうしたら良いのでしょうか?
特に変わった事はしていないはずなのですが・・・
署名中にエラーが発生しました: bin\Release\app.publish\\setup.exe の署名に失敗しました。
297:デフォルトの名無しさん
07/10/23 20:08:36
C#で例外を発生させたいんですが、どれを使えばわからずに全部Exceptionにしてます。
ですので、もっと内容に沿った例外を投げれるよう、主に使用する例外クラスを教えてください。
298:デフォルトの名無しさん
07/10/23 20:25:50
内容に沿ったものを自分で作れ
299:デフォルトの名無しさん
07/10/23 20:35:57
どんな状況を想定してんの?
300:297
07/10/23 20:48:45
半端にJavaを勉強してからC#をメインでしてるのですが、
Javaでは"InvalidArgumentException(引数が不正)"など、目的によってある程度例外が定義されてました。
こんな感じで、よく使う例外が元から定義されてると思って、よく使うものを挙げてもらいたかったのですが、
そういった例外は定義されてないんでしょうか?
301:デフォルトの名無しさん
07/10/23 20:54:14
MSDNライブラリで芋づる式に調べられるでしょ
URLリンク(msdn2.microsoft.com)(VS.80).aspx
とか
URLリンク(msdn2.microsoft.com)(VS.80).aspx
とか
302:デフォルトの名無しさん
07/10/23 21:03:45
>>301
ありがとうございます。地道に調べていきます。
303:デフォルトの名無しさん
07/10/23 23:26:11
どうみても定義されてるけど何で気づかんの?
304:デフォルトの名無しさん
07/10/24 01:38:21
ゆとり
305:デフォルトの名無しさん
07/10/24 02:41:12
クラスのコンストラクタ内で、そのクラスの初期化(表示処理など)がすべて終わった後に
ある処理を実行させるということは可能ですか?
たとえば、自作フォームのコンストラクタ内でdataGridViewをはりつけて、
dataGridViewの表示がおわった後に、なにか処理を実行したい場合って
どうすればいいんですかね?
コンストラクタ
{
dataGridView初期化;
なにか処理
}
だと、「なにか処理」を実行したあとにdataGridViewの表示処理を行ってるようなんですが。
306:デフォルトの名無しさん
07/10/24 03:00:30
表示された後はShownイベントでやるしかないんかな・・・?
307:デフォルトの名無しさん
07/10/24 12:35:26
配列の中身を普遍にしたいのですが、C#では可能でしょうか?
C++に例えると、これと同様なコードを書きたいんです。
const int const array[5] = {1, 2, 3, 4, 5};
308:デフォルトの名無しさん
07/10/24 12:40:27
>>307
readonly
309:デフォルトの名無しさん
07/10/24 12:42:15
それは違うでしょw
310:デフォルトの名無しさん
07/10/24 16:09:26
普遍性を保証したいだけなら ReadOnlyCollection みたいなのを作る手はあるけど。
効率面を気にしてのことなら、コンパイラの最適化を期待するしか。
311:デフォルトの名無しさん
07/10/29 15:31:59
int pi=3; ///<summary>円周率</summary>
こういう風にXMLコメントを定義の右側に書く事ってできなかったですか?
(上の通り書くと当然、次に定義される物のコメントとして扱われますが)
できたような気がするのはdoxygenか何かと混同してるのかな
312:デフォルトの名無しさん
07/10/29 16:25:14
C# の /// だとそれは無理。
313:デフォルトの名無しさん
07/10/29 17:04:51
了解
3.0でできるようにならんかな
314:デフォルトの名無しさん
07/10/29 17:06:42
doxygen使えばよくね?
315:デフォルトの名無しさん
07/10/29 17:19:28
int a; /// <summary>aaa</summary>
int b;
と
int a;
/// <summary>bbb</summary>
int b;
で意味が変わるなんて糞仕様以外のなんでもないだろ。
316:デフォルトの名無しさん
07/10/29 17:24:41
当然の仕様だ
317:デフォルトの名無しさん
07/10/29 17:54:37
int a = 0;
と
a=0 as int
が混在してるようなもんだろ、それ。
318:デフォルトの名無しさん
07/10/29 18:25:02
ちげーよ
319:デフォルトの名無しさん
07/10/29 19:41:06
ふと頭を過ぎったこと。
>>315みたいな奴がきっとエスパー召還質問するんだろうな。
こういう人って自分の書いたことが一意に相手(コンパイラ含む)に伝わるかどうかっていう
思考回路が欠けてるんじゃないの?
320:デフォルトの名無しさん
07/10/29 19:43:30
>>315…なのか…?
321:デフォルトの名無しさん
07/10/29 20:13:28
>>319
r;ァ'N;:::::::::::::,ィ/ >::::::::::ヽ
. 〃 ヽル1'´ ∠:::::::::::::::::i
i′ ___, - ,. = -一  ̄l:::::::::::::::l
. ! , -==、´r' l::::::/,ニ.ヽ
l _,, -‐''二ゝ l::::l f゙ヽ |、 ここはお前の日記帳じゃねえんだ
レー-- 、ヽヾニ-ァ,ニ;=、_ !:::l ) } ト
ヾ¨'7"ry、` ー゙='ニ,,,` }::ヽ(ノ チラシの裏にでも書いてろ
:ーゝヽ、 !´ " ̄ 'l,;;;;,,,.、 ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{ __)`ニゝ、 ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ , な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /
322:デフォルトの名無しさん
07/10/29 20:18:53
コピペ君って馬鹿だな、まで読んだ。
323:デフォルトの名無しさん
07/10/29 22:06:30
>>315
それがダメなら同じ///じゃなくて別の表記にすればいいだけだわな
doxygenでも///<みたいに書いていたはず
324:デフォルトの名無しさん
07/10/30 01:34:20
つかコードの後ろにコメントってセンス無さ杉
325:デフォルトの名無しさん
07/10/30 11:24:47
大量のツッコミを受けた>>315が反論できなくなったために
センスという否定も肯定もできない理由を使って問題の大前提を否定し始めたように見える
326:デフォルトの名無しさん
07/10/30 11:47:11
>>325
煽りたいだけなら他所でやれよ
>>315の言いたい事すら理解できてないだろお前・・・
327:デフォルトの名無しさん
07/10/30 12:16:29
>>322
コピペ君って馬鹿だな、まで読んだ。
328:デフォルトの名無しさん
07/10/30 15:55:11
ワロス
329:デフォルトの名無しさん
07/10/30 20:07:27
>>315の指摘は至極まっとうだと思うんだけど
>>319は何が言いたいのかわからん
330:デフォルトの名無しさん
07/10/30 20:17:21
>>319の指摘は至極まっとうだと思うんだけど
>>315は何が言いたいのかわからん
331:デフォルトの名無しさん
07/10/30 20:38:10
ひろ君もたか君も
つまらないケンカはやめなよ!
332:デフォルトの名無しさん
07/10/30 20:38:45
けい君ですが
333:デフォルトの名無しさん
07/10/30 22:17:02
ちょっとお伺いしたいことが
URLリンク(www.katch.ne.jp)
ここに書いてるclassを呼び出す記述がわかりません。。
ちなみにFormにはテキストボックス(TextBox1)とボタン(button1)があり
テキストボックスにURLを打ち込んで、ボタンを押すと、実行されるように
したいのですが・・・
どなたかわかる方がおられましたらよろしくお願いします
334:デフォルトの名無しさん
07/10/30 22:20:14
classは呼び出せませんよ
335:デフォルトの名無しさん
07/10/30 22:22:55
>>334 では記述例を・・
336:デフォルトの名無しさん
07/10/30 22:23:42
まずなんか本買うなりして基礎からやった方がいいよ
というかやれ
337:デフォルトの名無しさん
07/10/30 22:27:47
prismbox.sample.httpclient.Class2 i = new prismbox.sample.httpclient.Class2();
i.Class2(textBox1.Text, @"c:\test.gif");
ではi.Class2のところでエラーがorz
338:デフォルトの名無しさん
07/10/30 22:34:46
>>337
メソッドなら呼び出せる
Class2はメソッドじゃない
339:デフォルトの名無しさん
07/10/30 22:43:29
すいません>>338 上記のリンクの場合のメソッドって何になるんでしょうか?
340:デフォルトの名無しさん
07/10/30 22:45:13
>>339
Mainがメソッド
でもこれはプログラム起動時にフレームワークから呼び出される為のもの
341:デフォルトの名無しさん
07/10/30 22:47:19
>>339
C#やっててコンストラクタも知らんのか。
それ自体は”コンストラクタ”でググればでるけど、そんな基礎的なこともわからずに無謀なコーディングをするより、
入門系のサイトやページを一度じっくり見た方がいい。
でないと、またすぐにつまずく。
342:デフォルトの名無しさん
07/10/30 22:51:01
>>341 徹底的に基礎を固めてきますm(_ _)m
343:デフォルトの名無しさん
07/10/30 23:05:12
>>342
初めての言語はできるだけ入門本を一冊買った方がいいが、
初心者用のサイトならここがおすすめ
@IT:連載 改訂版 C#入門
URLリンク(www.atmarkit.co.jp)
本で索引を引くより早いから、俺も忘れたときに見にいってる。
344:デフォルトの名無しさん
07/10/30 23:24:37
argsをstringの配列にしながら、args.Length != 1ってのがよく分からない。
普通のstring変数にしてIsNullOreEmptyでチェックした方がいいんじゃないの?
345:デフォルトの名無しさん
07/10/30 23:32:05
>>344
日本語でおk
346:デフォルトの名無しさん
07/10/30 23:42:27
>>344
よくないよ
347:デフォルトの名無しさん
07/10/31 13:23:21
TabControlで、Tab耳の並びを縦型Vertivcalにしたとき、耳の数
が多いと自動的に段々重ねになる仕様のようなのですが、これ
を横型Horizontalの場合と同じように1列に並べる手段があると
ありがたいのですが、できるとしたらどのような方法になるでしょうか?
348:デフォルトの名無しさん
07/10/31 18:23:29
>自動的に段々重ねになる仕様
え?
んな仕様になってないでしょ。
デフォではタブが横幅に収まらない場合スピン(?)が右隅に付く
349:デフォルトの名無しさん
07/10/31 19:44:51
>>348
Tab耳を横並べHorizontalにした場合はその通りなんですが、
縦並べVerticalにした場合はデフォルトで段々重ねになる仕様のようでした。
Helpにもそうありました。これだと、たくさん耳があるとそれだけで場所を
取ってしまうため、一列にしたいのでした。
やっぱり仕様だから無理なのかなー・・・
350:デフォルトの名無しさん
07/10/31 19:48:04
追記)
ちなみに、「段々重ね」というのは、MultilineプロパティをTrueにしたとき
の並び状態のことでした。
351:デフォルトの名無しさん
07/10/31 20:57:34
確かにAlignmentをLeftにするとMiutilineが勝手にTrueになるね
352:デフォルトの名無しさん
07/11/01 23:21:53
メソッドの引数としてデリゲートを使いたいのですが、
いちいちデリゲートの型を外部に宣言せずに書く方法はありませんか?
public void Func(delegate void del() sendMethod) {~}
のようにかければ非常に楽なのですが。
353:デフォルトの名無しさん
07/11/01 23:24:23
これだからC厨は
354:デフォルトの名無しさん
07/11/02 00:01:07
いや、Cでも関数へのポインタ型は
きちんとした意味を持った名前にtypedefして使うものだろ。
355:デフォルトの名無しさん
07/11/02 01:05:46
>>352
System.Action
356:デフォルトの名無しさん
07/11/02 01:07:59
デリゲートや関数ポインタがスタティックだとわかってるんだろうね?
357:デフォルトの名無しさん
07/11/02 01:29:00
>>355
そのデリゲートが使えるということですか?この場合引数はないので使えないと思うのですが。
また、デリゲートの定義全般の話ですので、一つのデリゲートの型が一致しても抜本的な解決にはならないかと。
>>356
型の定義が静的だ、という意味でしたらわかっています。
その定義をどうにかして見やすく配置できないかと考えてる次第です。
358:デフォルトの名無しさん
07/11/02 01:41:26
void Func(Action sendMethod) { }
void SendMethod() { }
Action sendMethod = new Action(SendMethod);
Func(sendMethod);
Action<T>
359:デフォルトの名無しさん
07/11/02 01:50:40
>>358
すいません、がんばって理解しようとするのですが眠くてどうにもならないようです。
また明日の朝見直して理解しようと思います。
360:デフォルトの名無しさん
07/11/02 06:06:10
擬似コード過ぎて理解の必要がないというかw
361:デフォルトの名無しさん
07/11/02 10:27:19
メソッド内で、一度代入したら不変であることを保証しようと思って、
void func()
{
362:デフォルトの名無しさん
07/11/02 10:29:12
すいません、失敗して書き込んでしまいました。
メソッド内で、一度代入したら不変であることを保証しようと思って、
void func()
{
readonly int i = OtherFunc();
~
}
としようとしたのですが、readonly が使えるのはクラスのフィールドのみらしく、できませんでした。
これと同等の文法はありますか?
363:デフォルトの名無しさん
07/11/02 10:59:26
フィールドにすれば?
364:デフォルトの名無しさん
07/11/02 11:35:46
>>363あほなことゆうな。
出来てもいいと思うんだけど出来ないね。
言語仕様を出来るだけシンプルにしたかったんかな?
365:デフォルトの名無しさん
07/11/02 12:07:10
メソッド内でreadonlyを使わなければわからなくなるほど
変数宣言が多くて長いメソッドを書くなということでは
366:デフォルトの名無しさん
07/11/15 00:24:37
C#をやってるたら、仕事に支障をきたし始めたので辞めます
皆さんも仕事でC++を使う人は辞めたほうが無難です。
367:デフォルトの名無しさん
07/11/15 00:33:52
|
|
∩___∩ |
| ノ _, ,_ ヽ (( | プラプラ
/ ● ● | (=)
| ( _●_) ミ _ (⌒) J ))
彡、 |∪| ノ
⊂⌒ヽ / ヽノ ヽ /⌒つ
\ ヽ / ヽ /
\_,,ノ |、_ノ
368:デフォルトの名無しさん
07/11/15 00:37:32
今時一本で食ってこうとしてる奴なんているんだ・・・可哀想に
369:デフォルトの名無しさん
07/11/15 01:07:38
>>366
きっとC++をただ使ってるだけだろうな
370:デフォルトの名無しさん
07/11/15 03:44:22
英語をやってるたら、仕事に支障をきたし始めたので辞めます
皆さんも仕事で日本語を使う人は辞めたほうが無難です。
371:デフォルトの名無しさん
07/11/15 04:08:37
自分の能無しぶりを理由にしても説得力はないな
372:デフォルトの名無しさん
07/11/15 11:25:36
言語は道具、道具を複数使ってるからと言って支障きたすとは思えないのだが?
373:デフォルトの名無しさん
07/11/15 23:27:54
わからんではない
オブジェクト作りっぱなしなんてC++ではありえない
そんな環境になれてしまうとC++が面倒に感じてしまう。
まぁ、C#は使いやすさと引き換えに速度を完全に捨てたらな・・・
374:デフォルトの名無しさん
07/11/15 23:41:29
速度は捨ててないぞ
捨てたのはメモリだ
375:デフォルトの名無しさん
07/11/15 23:50:26
>>374
ソクドモステテマスッテ
376:デフォルトの名無しさん
07/11/15 23:59:31
メモリを捨てて速度が保たれるなんてありえない。
377:デフォルトの名無しさん
07/11/15 23:59:31
文法がC#のC++があったら最強なんじゃないかと思う。
378:デフォルトの名無しさん
07/11/16 00:00:42
>>376
それに初起動の速度もパフォーマンスだと考えると、メモリを食うならそれだけ起動が送れるからな。
379:デフォルトの名無しさん
07/11/16 00:04:58
>>377
ネイティブのC#ならアンマネージドC#で作れるだろう。
ただし、APIは自作になるけどな。
380:デフォルトの名無しさん
07/11/16 00:05:35
>>377
Delphi
381:デフォルトの名無しさん
07/11/16 00:12:14
個々の性能を見るとC#はそう悪くない。
GCに関してはここによると
URLリンク(densanshokunin.at.webry.info)
> C++のstack > C#のFinalizeなし > > C++のheap = C#のDispose > C#のFinalize
ということらしい。スタックさいこーで次点がファイナライザなしのGCだそうだ。
C#が遅く感じるのはメタ情報を抱えたままなのが大きいように思える。
必要以上にコードやリソースの破棄と再ロードやページアウトインを繰り返していてこれが足を引っ張ってる。
JITやngenしててもメタ情報を参照するために結局もとのアセンブリもロードされているのが確認できる。
おかげで別の部分がメモリから追い出されることになりやすい。
382:デフォルトの名無しさん
07/11/16 00:19:38
GCの話題にC++が出て来るなんて胡散臭すぎ
383:デフォルトの名無しさん
07/11/16 00:24:30
>>382
普通に一番使われてるからだろ。
それにGCの動きはシステムに激しく依存するから、言い出したらきりがない。
384:デフォルトの名無しさん
07/11/16 00:27:09
C#はマネージドコードなんだから、比較対照は同じマネージドコードのJavaだったら良いが
ネイティブのC++出されてもね。それにネイティブコードはあっさりとOS壊すプログラム開発が
できる(例えやりたくなくても)という欠点があるから、今後は.NETもよりセキュリティ強化された
サンドボックス上で実行しなくてはならないと結論がでて、ネイティブは生き残れなくなるんだよ。
385:デフォルトの名無しさん
07/11/16 00:33:13
トリを忘れてたが>>381は>>373を受けての書き込みだからね。
386:デフォルトの名無しさん
07/11/16 00:33:15
>>384
マジで言ってんのか?だったらなんでWin32APIを.NETでサポートしないんだよ。
アンマネージドがマネージドに置き換えられるんなら、全部の機能が.NETから使えないとおかしいだろうが。
だいたいユーザー管理もまともに出来ないWindowsでソフトウェアのセキュリティ云々言われてもなあ?
387:デフォルトの名無しさん
07/11/16 02:10:11
w
388:デフォルトの名無しさん
07/11/16 02:11:05
∩___∩ |
| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | J
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
389:デフォルトの名無しさん
07/11/16 02:43:35
>>386
きまってるだろうが、最初は置き換えるつもりだったけど厳しいから
方向転換したんだよ。
390:デフォルトの名無しさん
07/11/16 03:42:16
これはAA貼られても仕方ないなw技量が知れる
391:デフォルトの名無しさん
07/11/17 01:20:47
string csvDir = @"C:\test\";
string csvFileName = "test.csv";
string conString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
csvの接続ロジック
System.Data.OleDb.OleDbDataAdapter da = new System.Data.OleDb.OleDbDataAdapter(commText, con);
DataTable dt = new DataTable();
da.Fill(dt);
OleDbConnection OleConn = new OleDbConnection();
ACCESSの接続ロジック
OleDA = new OleDbDataAdapter(expenditure, OleConn);
OleDA.Fill(Ds);
DDs = ddt;←ここがわからない
OleDbCommandBuilder cb = new OleDbCommandBuilder(OleDA);
cb.QuotePrefix ="[";
cb.QuoteSuffix = "]";
OleDA.Update(Ds) ;
CSVファイルをACCESSにインポートしたいのですが、CSVをテーブルに貼り付けた後は
どのようにしてACCESSにインポートすればよいのでしょうか?
上記のプログラムは一応コンパイルできるのですが、ちゃんとデータが移ってなくて・・・
どなたかわかる方がおられましたら、修正をおねがいします
392:デフォルトの名無しさん
07/11/17 01:21:37
すいませんDDs⇒Ds、ddt⇒dtです
393:デフォルトの名無しさん
07/11/17 11:14:16
C++で配列を作成し、それをIntPtrにポイントし、そのIntPtrをC#の関数に渡したいと思います。
この時、C#ではどのようにして、その配列を扱うことができるのでしょうか?
394:デフォルトの名無しさん
07/11/17 11:34:03
C++"で"IntPtr?
そのC++ってのはC++/CLIなのか?
395:デフォルトの名無しさん
07/11/17 12:10:06
>>394
はい。基本的にはIntPtrがサポートされているものです。
396:デフォルトの名無しさん
07/11/17 12:23:22
意味が分からん。なんだよ基本的にはサポートされてるって
マネージド同士なら配列直接渡しゃいいじゃねーか
397:デフォルトの名無しさん
07/11/17 12:29:21
>>396
正論。
>>395
何がやりたくてそのようなことをしようとしてるのか説明してくれないと。
398:デフォルトの名無しさん
07/11/17 12:47:38
>>397
すいません。説明が悪くて。
アンマネージの配列のポインタが渡されて、それをC#クラスに渡したいというクラスがあります。
その方法としてIntPtr渡しを考えました。
アンマネージからマネージにマーシャルする方法もありますが、メモリコピーは避けたいです。
このような場合はマネージのみサポートする言語では作成しない方がいいのでしょうか?
399:デフォルトの名無しさん
07/11/17 12:55:04
妥当なのは配列をやり取りするんじゃなくて操作をラップしたクラスをやり取りする形。
UnmanagedMemoryStream とか。
いざとなりゃ直接ポインタでもいいけどな。
400:デフォルトの名無しさん
07/11/17 12:58:36
unsafeでポインタにすればいいのでは?
そもそも、C++の配列を作っている部分が既存部分でない(C#に対するラッパ部分)
であるなどといった状況なら、初めからマネージ配列にし、
C++内では必要に応じてpinしてやったほうが楽な気がする。
401:デフォルトの名無しさん
07/11/17 13:23:51
unsafeとクラス作成ですか。
特にC#はダメということではないのですね。ありがとうございます。
いただいたアドバイスをさらに調べてみます。
402:デフォルトの名無しさん
07/11/17 16:43:46
C#はC++の後継言語だから、C++できることはたいていサポートされているよ。
403:デフォルトの名無しさん
07/11/17 17:01:06
>>402
【審議拒否】
∧,,∧ ∧,,∧ タリー
∧∧ (・` ) ( ´・) ∧∧
(ω・` ) U ) ( Uノ( ´・ω) キリバンナノニヨ
| U u-u u-u (U ノ
u-u ∧,,∧ ∧,,∧ u-u
(・ω・`) (´・ω・) コンナレスジャシカタネエヨナ
(l U) (U ノ
`u-u'. `u-u'
404:デフォルトの名無しさん
07/11/17 17:06:00
餓鬼くさ。
403みたいのってひょっとして面白いと思ってコピペするのかね。
そんなの面白いと思うのは精神年齢永遠の12才の自分だけなのに
405:デフォルトの名無しさん
07/11/17 17:08:27
402 はキリ番なのか?
406:デフォルトの名無しさん
07/11/17 17:59:26
しかし402も釣りだろ
407:デフォルトの名無しさん
07/11/17 18:31:32
>402
C++からややこしい機能はできなくしたからこそ扱いやすい言語になってるのかと。
408:デフォルトの名無しさん
07/11/17 19:29:29
this.axWebBrowser1.Navigateに
client.Connect(comboBox1.Text,80);
でアドレスを渡して表示させています。
comboBoxにはFQDNを入れておりますがhttp://から記載するとエラーになります。
FQDNしか入れられないためにHTTPSでのアクセスが出来ていないのですが
どのようにすればSSLでのアクセスが可能になるのでしょうか?
409:デフォルトの名無しさん
07/11/17 21:57:07
>>407
C++に挫折した人にぴったりですねhw
410:デフォルトの名無しさん
07/11/17 22:05:37
>>408
AxWebBrowser なのか TcpClient なのかわからん
取り敢えず SslStream とか調べたらどうだ
411:デフォルトの名無しさん
07/11/18 00:07:17
C++にこだわる奴は言語にこだわり過ぎ。
本当に大事なことは必要な機能を実装すること。
ややこしい機能はチーム開発や保守性をぶっ壊してくれるから
簡単にすることは大事。
412:デフォルトの名無しさん
07/11/18 00:08:08
>>411
楽しいのも判るけどさスルーする事も大事。
413:デフォルトの名無しさん
07/11/18 00:26:01
いろんな言語やってきて思うんだけど、結局のところ言語の文法って本質的に言語間の差にはならないんだよね。
foreachなんかでも、マクロ使えば簡単にCでも使えるわけだし。
本当に言語選択で大事なのは、VMだとかOS依存部分だとかのもっと大局的な部分なんじゃないかなあ。
414:デフォルトの名無しさん
07/11/18 00:36:54
言語選択は技術者の経験やシステムの構成に左右されるところが多いから、
何が良いとかは断言できない。
自分にとって、一番スマートにプログラミングできるのはC#だけど、
サーバサイドプログラミングでLinuxならJava、UnixならCを選択するのが良いと思う。
なにせ、並列処理はやはりUnix系使うのが一番堅実だから。
415:デフォルトの名無しさん
07/11/18 00:38:25
堅実ってなあに?
416:デフォルトの名無しさん
07/11/18 00:39:59
堅実というより堅牢性
・プログラムにおいて、エラーや例外などに強く簡単には暴走しないもの。
・少なくともすぐに「不正な処理」と表示し、データ諸共および自分自身までふっ飛ばすようなOSのような作りではない事。
417:デフォルトの名無しさん
07/11/18 00:40:08
ググレカス
418:デフォルトの名無しさん
07/11/18 00:42:08
いまどきそんなサーバ用OSはない。
419:デフォルトの名無しさん
07/11/18 04:36:13
なんか見てると最近WebBrowserコントロールの質問はやってんな
同一人物なのか 流行なのかwwww
420:デフォルトの名無しさん
07/11/23 01:24:28
ちょっと前に、スプラッシュウィンドウの実装についてあちこちで議論があったのを見たんだが、
こんなやり方では駄目なんだろうか?
public static class Program
{
[STAThread]
private static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Idle += Application_Run;
Application.Run();
}
private static bool _applicationRunning = false;
private static void Application_Run(object sender, EventArgs e)
{
if (_applicationRunning) { return; } else { _applicationRunning = true; }
Application.Idle -= Application_Run;
//ここにスプラッシュウィンドウだの、メイン処理だのを書く
//プログラムを終了させるべき場所にApplication.Exit()を書く
}
}
421:デフォルトの名無しさん
07/11/23 10:47:43
初期起動時の処理にアプリケーション関連のイベントを記述するのは常識だから、
それでおk。
422:420
07/11/23 16:41:04
>>421 さんくす
423:デフォルトの名無しさん
07/11/23 16:42:35
そのあとのスプラッシュの表示と初期処理の
同時処理から完了までの流れがないと
大して意味ない気がするが…
どうでもいいが最近の書籍ではタイマー使って
一定時間同期的にスプラッシュ表示するやりかたばっか書かれてるな。
スプラッシュの意味ないっつうの。
まあ平気でビジーループ使ってる例よりはちょっとだけましだが。
424:420
07/11/23 17:23:29
>>423
ご意見どうも。
実のところを言うと、スプラッシュウィンドウというよりは、
Form_Loadに全体の初期化処理を書きたくないので、
それをどこに書こうか、ということです。
必ずしも最初からFormを使うというわけでもないし。
あとは>>420の例で、何か過失を犯していないかを知りたかったのです。
425:デフォルトの名無しさん
07/11/23 19:03:56
メッセージループに入ってからやる必要のある初期化ならそんなんじゃないの。
そうでないならなんもいらんと思うが。
426:デフォルトの名無しさん
07/11/25 18:00:35
Bitmapを綺麗に回転させたいのですが、
RotateTransformは中心で回転していないのか一定以上の角度になると上手くいきません。
画像中心で回転させるにはどう指定すればいいのでしょうか?
教えてください。m(_ _)m
public static Bitmap BitmapRotate(Bitmap bmp, float angle)
{
// 出力用
Bitmap dst = new Bitmap(bmp.Width, bmp.Height, PixelFormat.Format32bppArgb);
// Graphics オブジェクト
Graphics g = Graphics.FromImage(dst);
// 透明色でクリアする
g.Clear(Color.Transparent);
// 回転させる
g.RotateTransform(angle);
// 綺麗に回転させるフィルタ
g.InterpolationMode = InterpolationMode.HighQualityBilinear;
// 描画
g.DrawImageUnscaled(bmp, 0, 0);
// 解放
g.Dispose();
return dst;
}
427:デフォルトの名無しさん
07/11/25 20:45:04
>>426
画像の中心を回転中心にするならそいうふうに移動させないと。
URLリンク(msdn.microsoft.com)
移動→回転→元の位置に戻す
回転させたことないから間違ってたらスマンね
428:426
07/11/26 05:37:10
RotateTransformの前後に下記のコードを入れることで解決しました。
ありがとうございました。m(_ _)m
// 中心を指定する
g.TranslateTransform(bmp.Width / 2, bmp.Height / 2);
// 回転させる
g.RotateTransform(angle);
// 元に戻す
g.TranslateTransform(-bmp.Width / 2, -bmp.Height / 2);
429:デフォルトの名無しさん
07/11/28 19:57:23
C#がJavaより勝っている点を教えてください。
430:デフォルトの名無しさん
07/11/28 20:13:42
教えてあげないよ
431:デフォルトの名無しさん
07/11/28 20:16:46
じゃん
432:デフォルトの名無しさん
07/11/29 04:54:20
さくさくさんかくぽりんきー
433:デフォルトの名無しさん
07/11/29 05:48:08
コイケヤ
ココ行ケヤ
JAVAとC#どちらが優れているか教えてください Part2
スレリンク(prog板)
434:デフォルトの名無しさん
07/11/30 21:56:41
データバインド対応のコンポーネント作りたいんですけど
どのクラスから調べればいいですか?
ぜんぜん見つからない・・・
435:デフォルトの名無しさん
07/12/01 00:00:29
意見の割れそうなネタですが、皆様 using ステートメントをどの程度
使用していらっしゃるのでしょうか。
自分は今まで、ルート名前空間を汚したくない、或いは名前空間の
構造を崩したくないといった理由で using ステートメントを一切
使わず、愚直にも省略せず全部記述していたのですが、横に長く
なりすぎていよいよ疲れてきて、それに追い打ちをかけるように、
拡張メソッド (C# 3.0 言語仕様) を使うにはそのメソッドの属する
クラスの属する名前空間をインポートしてらねばならないという
ことを知って悩んでおります。
それなりに多様な名前空間を使用していますが、あまり多くインポートしても
逆に読みづらくなりそうに感じます。使用する名前空間それぞれどういった
基準でインポートするか否かを決めるか等、皆様どうか私に何らかの指針を
示して頂けませんでしょうか。
436:デフォルトの名無しさん
07/12/01 00:02:27
全部インポートしてる。
型名重複するのなんてTimerぐらいだろ。
437:435
07/12/01 00:02:39
>>435 の 9 行目:
誤: してらねば
正: せねば
失礼いたしました。
438:デフォルトの名無しさん
07/12/01 00:10:26
基本的に全部インポートする
クラス名が重複する場合は完全修飾名で書く
439:デフォルトの名無しさん
07/12/01 00:16:27
>>435
文脈からしてひどく実直そうな人物と見るが、
努めてソフトにいうと、usingは普通衝突が発生しない限り使う。衝突しても、名前空間の張り替えをして使う。
よって、あなたがしてるようなコーディングはひどく非効率で例外的だ。今すぐusingステートメントを使うことをおすすめする。
それと、なんとなくIDEなどのコーディング補助を一切使ってない雰囲気があるのだが、
この際にそれらの機能を使ってみたらどうだろうか?
VisualStudio2005を使ってるなら、クラス名を書けば左下になにかでるはず。そこをクリックするか、Ctrl+Alt+F10を押して、
メニューから任意の名前空間を選べば、自動的にusingを書いてくれる。
440:デフォルトの名無しさん
07/12/01 00:21:23
usingはクラス名を省略したいから書き込むんだよ。
つまり、一回しか宣言しないクラスは完全修飾名で記述してもいいが、
例えば、ファイルアクセスクラスでSystem.IOを何回も呼び出す可能性が
多い名前空間はあらかじめ宣言しておいた方が効率が良い。
この効率が一番重要なのがRAD。
441:デフォルトの名無しさん
07/12/01 00:22:07
>>439 ( ・∀・)つ〃∩ ヘェーヘェーヘェー
442:デフォルトの名無しさん
07/12/01 00:23:09
ユーザコンポーネント内のコードからページに直接貼り付けたテキストボックスを参照するもっとも効率的な方法はどうすればいいのですか
443:デフォルトの名無しさん
07/12/01 00:28:48
テキストボックスに限らず、クラスを参照する一番の方法は
プロパティを使うこと。
444:デフォルトの名無しさん
07/12/01 00:59:34
たしかにC++なんかだと、C#のそのusingに相当する
usingディレクティブは使うなって言われるけどね。
ただ、それはエイリアスとかusing宣言とか代替があるから言えるわけで、
C#はガンガンusingする言語だと思っている俺。
445:443
07/12/01 01:25:47
それと忘れてたけど、コントロールのアクセス修飾はprivateがデフォルトだから、
変えなければいけない。
446:デフォルトの名無しさん
07/12/01 01:30:23
>>435
「using ステートメント」じゃなくて「using ディレクティブ」だろというか
そんなこと気にする前に基本的な言葉をだな(ry
まぁそれはいいとして >>444 もいっているように C++ で using namespace
が気になるのは、その他の仕様含めた総合的な要因によるもので、
その前提を元に C# は考えられていてほぼ危険性がクリアされているので
普通に使え。そっちのほうがみやすい。
447:デフォルトの名無しさん
07/12/01 10:19:35
ありがとう。
でもユーザコントロールから親のページクラスをどうすればアクセスできるのか想像できません
448:デフォルトの名無しさん
07/12/01 11:54:24
ページクラスを継承したクラスにコントロール検索プロパティを実装したとしてもユーザコントロールからはスコープの範囲外だからみれないですよね
449:デフォルトの名無しさん
07/12/01 12:24:22
マスターページに実装。
450:デフォルトの名無しさん
07/12/01 13:47:00
マスターページに検索ののプロパティを作ってその配下のページコントロールに配置したテキストボックスを参照するのですか?
できそうな気がする。。
451:デフォルトの名無しさん
07/12/01 14:22:26
DataGridVewでデータバインディングしている時、主キー、ユニークの重複チェックは皆どうしてるの?
主キーは複合もあるので行でチェックするのがいいという前提で。チェック場所はいろんなイベントがあると思う
・DataGridVewのRowValidatingイベント
・DataTableのRowChagingイベント
※DBに問い合わせは論外。
他にもあるかもしれんが・・・。あったら教えて欲しいんですが。
で、入力された値をチェックと言うことでDataGridVewのRowValidatingでチェック。(ViewのことはViewでチェック)
他のクラスでチェックすると、調査時いろんなソースを追いかけないといけないので。
ほんでと、主キー重複、ユニークチェックメソッドはあるのか? → 調べたけどないと思う。
じゃ、別の方法でチェックするにはどうしたらいい?となると。
クラス内部で主キー、ユニークの値を配列で保持して、配列内をチェックしかないのかなと思ってるんだけど。
複合主キーの時は、それぞれの列の値を文字列連結して1つの文字列として保持する。
これ以外になんかいい方法ってないですか?
452:デフォルトの名無しさん
07/12/01 14:25:06
あ、DataGridVewのDataErrorイベントは論外で。あんなの使いようがねぇって感じなので。
453:デフォルトの名無しさん
07/12/01 14:49:10
バインド先がDataTableならPrimaryKey設定しとけば
DataGridVewの入力時エラーになるけど
454:デフォルトの名無しさん
07/12/01 16:24:19
>>450
逆、参照するのがテキストボックス
455:デフォルトの名無しさん
07/12/01 17:25:07
逆とはどうゆう事?マスターページからページのテキストボックスを参照でいいんだよね。
456:デフォルトの名無しさん
07/12/01 19:25:42
設定値はマスターページの値で、テキストボックスが更新されたら
マスターページの値を更新。
457:デフォルトの名無しさん
07/12/01 19:29:06
説明が面倒だから、これをやるってこと
URLリンク(www.atmarkit.co.jp)
458:デフォルトの名無しさん
07/12/01 19:36:58
UdpClient.BeginReceive(~)
から
byte [] buffer = UdpClient.EndReceive(~);
の間に複数の受信接続が在った場合
bufferに入るのは最後に受け取った1つのデータだけですか?
459:デフォルトの名無しさん
07/12/01 23:09:37
結局はテキストボックスがトリガーとなってマスターページに値をあたえないとだめなんだね。
ユーザコントロールがトリガーとなって見に行くことがしたいけど無理なんだよね
460:デフォルトの名無しさん
07/12/02 08:48:15
>>458
最初のだ
461:デフォルトの名無しさん
07/12/02 14:07:57
>>459
これは無理そう。
FindControlsみたいなメソッドをマスターページにプロパティで実装して、
ユーザコントロールのイベント内から呼び出したいんだろ?
これはできそうでできない領域。それに気付いただけでも天才だよ。お前
>>456
も言っていること意味不明。
462:デフォルトの名無しさん
07/12/02 20:44:44
やっぱり無理なんですね
463:デフォルトの名無しさん
07/12/02 21:07:10
>>461
parent経由で親PropertyにSetなら出来るだろ
464:デフォルトの名無しさん
07/12/02 21:53:27
ページといえどもクラスでしょ参照できる分けない
465:435
07/12/02 23:13:03
書き込みが遅れてしまいすみません。
他の方々が書かれたソースを読んでいても薄々感じていましたが、やはり皆様
using を積極的に使うものなのですね。確かに衝突など滅多に起きませんし、
名前空間の構造が崩れることよりも行が横に長い方が害悪かもしれません。
皆様のご助言のお陰で漸く using を使うべきとの考えへと至ることができました。
ありがとうございました。
>>435
自分はむしろ真逆な質の人間だと思っていたのですが。一応 IntelliSense 等、
少しは使っています (というより IntelliSense を使わないで日々コーディング
できる方が居たら尊敬してしまいます)。
>>446
仰る通り、using ディレクティブでした。>>437 といい、きちんと見直したはずだった
のですが。お恥ずかしい限りです。
466:435
07/12/02 23:17:31
>>465 中のレスアンカ 誤: >>435 → 正: >>439 でした。
またしてもやらかしてしまった。度々の訂正、申し訳ありません。
467:デフォルトの名無しさん
07/12/03 12:18:45
質問があります。環境はVS2003のC#です。
const Point pos = new Point(1, 1);
とやると
「'pos' に割り当てられた式は定数でなければなりません。」
というエラーが出ます。
定数にnewは使えるないんでしょうけど、どのようにしたら上記のような定義を実現できるでしょうか?
468:デフォルトの名無しさん
07/12/03 12:26:56
static readonly Point pos = new Point(1, 1);
ふらっとC#スレに行け
469:デフォルトの名無しさん
07/12/03 12:30:39
>>467
残念なことに、constはプリミティブ型(int, double)か、後は例外的にString型のみしか認められない。
非常に不思議なことに、C#には改変不可を示す修飾(C++のconstやJavaのfinal)がない。
一応readonlyという似たようなものがあるが、これはコンストラクタでしか使えないのでメソッド内などでは使えない。
470:デフォルトの名無しさん
07/12/03 13:43:13
いたいことは何となく分かるがかなり変なこと書いてるぞ。
471:467
07/12/03 13:58:16
>>468-469
ありがとうございます。
readonly修飾子を使用することにしました。
472:デフォルトの名無しさん
07/12/03 16:09:37
>>471
プロパティの使用も検討してみては。
473:デフォルトの名無しさん
07/12/08 20:10:03
StreamReader sr = new StreamReader("C:\\test\\時間集計.txt", Encoding.GetEncoding("Shift_JIS"));
string text = sr.ReadToEnd();
sr.Close();
this.rtbIndication.Text = text;
Regex R_Ex = new Regex("this.");
//TextBox1.Text内で正規表現と一致する対象を1つ検索
Match M_stPath = R_Ex.Match(this.rtbIndication.Text);
while (M_stPath.Success)
{
int iFind = this.rtbIndication.Find(M_stPath.Value, RichTextBoxFinds.MatchCase);
this.rtbIndication.SelectionStart = iFind;
this.rtbIndication.SelectionLength = M_stPath.Value.Length;
this.rtbIndication.SelectionColor = System.Drawing.Color.Red;
M_stPath = M_stPath.NextMatch();
}
リッチスプレッドの中から特定の文字だけを抜き出して、そのフォントカラーを赤くしたいのですが
この場合、thisが複数あるにも関わらず、最初に見つかったthisしか赤くなりません。
どこがまずいのでしょうか??
474:デフォルトの名無しさん
07/12/08 21:30:40
↑"this"です
475:デフォルトの名無しさん
07/12/08 21:45:22
とりあえずステップ実行でもしてみたらー?
476:デフォルトの名無しさん
07/12/08 22:12:01
>>475
原因は解っています。
int iFind = this.rtbIndication.Find(M_stPath.Value, RichTextBoxFinds.MatchCase);
の部分で、リッチテキストボックス(rtbIndication)のテキストの最初から読み込んでるから
必ず最初の"this"で止まってしまうのです
なにかいい方法はないでしょうか?
477:デフォルトの名無しさん
07/12/08 22:17:56
Findの任意の位置から検索開始できるオーバーロード使えばいいんじゃね
478:デフォルトの名無しさん
07/12/08 22:23:12
>>477
すいません、たとえばどのように書けばよろしいのでしょうか?
479:デフォルトの名無しさん
07/12/08 22:37:03
いやまずヘルプ見ろよ
480:デフォルトの名無しさん
07/12/08 22:37:58
>>all
解決しました!>>477ありがとう!
481:デフォルトの名無しさん
07/12/11 18:21:35
namespace IEnumeratorTest
{
public class Sample : IEnumerable<char>
{
public IEnumerator<char> GetEnumerator()
{
yield return 'C';
}
}
class Program
{
static void Main(string[] args)
{
foreach (char c in new Sample())
{
Console.Write("{0}", c);
}
}
}
}
C#2.0 yieldの勉強をしています。
このコードで何故コンパイルエラー(CS0536)が出るのかわかりません。
下記のどれにも違反していないのですが。。
・public キーワードが省略されている。
・戻り値の型が一致しない。
・static キーワードがある。
何か足りないものでもあるのでしょうか?
Visual C# 2005 Express Editionを使用しています。
482:デフォルトの名無しさん
07/12/11 18:46:25
MSDNを見るとIEnumerator<>は非ジェネリックのIEnumeratorを継承
していました。
また、以下の記述がありました。
実装時の注意 このインターフェイスを実装するには、非ジェネリックの IEnumeratorインターフェイスを実装する必要があります。
そこで
IEnumerator IEnumerable.GetEnumerator()
{
//ここでIEnumeratorオブジェクトを戻さないとエラーになる
}
を実装する必要がありそうなのですが、何を書けばよいのかわかりません。
483:デフォルトの名無しさん
07/12/11 18:49:49
>>481
エラーメッセージ読め。
IEnumerable<T> は non-generic な IEnumerable を継承してるんで、
そっちの GetEnumerator も実装しないとだめ。
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
484:デフォルトの名無しさん
07/12/11 18:50:59
>>482
IEnumerator IEnumerable.GetEnumerator() の中身は、
return this.GetEnumerator(); にでもしとけ。
485:デフォルトの名無しさん
07/12/11 19:02:48
Yieldの使い方を根本的に間違ってるわけだけどな。
Yieldを含む IEnumerableなファンクションが暗黙にいろいろやってくれる。
この例だとstaticにしてもいいな。
public class Sample {
public IEnumerable<char> Hoge() { yield return 'C'; }
}
foreach (char c in new Sample().Hoge())
Console.Write("{0}", c);
486:デフォルトの名無しさん
07/12/11 19:28:55
>>483
>>484
>>485
ありがとうございました。解決しました。
>>485
別法でしょうか。まだ詳しいことは分からないのと
サンプルの方法も間違っていなそうなので、とりあえず
これを使っていこうと思います。
487:デフォルトの名無しさん
07/12/11 20:12:58
int x = 100, y = 200;
private Storyboard story;
private DoubleAnimation myDoubleAnimation;
private DoubleAnimation myDoubleAnimation2;
private void WindowLoaded(object sender, RoutedEventArgs e) {
Rectangle rect = new Rectangle();
rect.Width = 10;
rect.Height = 10;
. (省略
myDoubleAnimation = new DoubleAnimation();
myDoubleAnimation.From = 10;
myDoubleAnimation.To = x;
myDoubleAnimation.Duration = new Duration(TimeSpan.FromMilliseconds(2000));
myDoubleAnimation2 = new DoubleAnimation();
myDoubleAnimation2.From = 10;
myDoubleAnimation2.To = y;
myDoubleAnimation2.Duration = new Duration(TimeSpan.FromMilliseconds(2000));
Storyboard.SetTargetName...(省略
story = new Storyboard();
story.Children.Add(myDoubleAnimation);
story.Children.Add(myDoubleAnimation2);
story.Begin(this, true);
}
private void click(object sender, RoutedEventArgs e) {
story.Stop(this);
x = 200;
y = 300;
story.Begin(this, true);
}
.NET3.0ですが、ストーリーボードの子要素の中身を変更するのってどうやるんでしょうか?
xとyの値をクリックで変えたいのですが、上記の方法ではうまくいかず、
クリックしてもx,yは100,200のままで変わりません 。どうすればいいのでしょうか?
488:デフォルトの名無しさん
07/12/12 01:25:48
yieldって使うか?用途が見えないのは理解不足なだけなのか?
489:デフォルトの名無しさん
07/12/12 01:27:37
うん
490:デフォルトの名無しさん
07/12/12 02:07:33
用途ってか、Enumerable返すメソッドが簡単に作れるから便利ってだけだけど。
状態を持つ場合なんか手で書きたくないしね。
491:デフォルトの名無しさん
07/12/12 04:35:41
>>487
myDoubleAnimation.Toはint?だからclickの中でx変えただけじゃ元の値のままですよ。
意図通りの挙動をさせるにはこんな感じ?
private void click(object sender, RoutedEventArgs e) {
story.Stop(this);
x = 200;
myDoubleAnimation.To = x;
y = 300;
myDoubleAnimation2.To = y;
story.Begin(this, true);
}
492:491
07/12/12 04:38:58
×int?
○double?
寝ぼけてました。
493:デフォルトの名無しさん
07/12/12 07:41:59
yieldは列挙とマイクロスレッドが主な用途だろうな
こう言語機能をこんな風に使うとこんなことができるよてきなTips( ゚д゚)ホスィ…
494:デフォルトの名無しさん
07/12/12 12:22:21
foreachと組み合わせるとなかなかいい塩梅だよ。
495:デフォルトの名無しさん
07/12/12 12:22:41
オライリーのプログラミングC#見たけど
ユーザー定義型のソート基準を決めるのに
IComparerを実装するのって面倒ですね。
この点はC++のほうが分かりやすくて楽チン。
496:デフォルトの名無しさん
07/12/12 12:34:29
>>>493
その手のサイト運営してる身だけど、
そういう Tips は結構まとめるの面倒なのよね。
日記とかにちまちま書いてる人はいるけど、それを1箇所に集めるとなると。
「この辺りを Tips にまとめて欲しい」みたいなの列挙しといてくれたら
そのうちページに起こすけど。
>>495
いや、IComparison<T> デリゲートでもソートできる。
C# 3.0 だと、
list.Sort((x, y) => y.CompareTo(x));
とか書ける。
497:デフォルトの名無しさん
07/12/12 12:36:10
2.0でも、十分楽だと思うけど。
Array.Sort(table, delegate(Hoge x, Hoge y)
{
return ・・・;
});
498:デフォルトの名無しさん
07/12/12 12:44:30
delegateは未読です。
C#は記法がキモイのはC++と同じで、
慣れるまで時間がかかりそうです。
499:デフォルトの名無しさん
07/12/12 12:47:37
C++ がキモイって。
いったい、元々どこの畑にいたんだ。
500:デフォルトの名無しさん
07/12/12 12:57:45
>>496
よかったらサイトのアドレス教えてください@メアド
501:デフォルトの名無しさん
07/12/12 18:52:31
TextBoxに色付けたり
インデント開始と停止する系の命令はあるですか?
502:デフォルトの名無しさん
07/12/12 20:28:42
釣り?
503:デフォルトの名無しさん
07/12/12 20:35:34
はい
504:デフォルトの名無しさん
07/12/12 20:47:52
リッチなやつにしとけ
505:デフォルトの名無しさん
07/12/12 23:14:34
ブルジョワテキストボックスでも開発するか
めちゃくちゃリソース食うの。
506:デフォルトの名無しさん
07/12/12 23:15:23
word呼べよ
507:デフォルトの名無しさん
07/12/13 04:30:30
例外をcatchするとデバッグしにくいという問題は、
IDEのメニュー「デバッグ」「例外」で対応できる。
基本的にはSystem.IO系やNullReferenceExceptionの「スルー時中断」にチェックを入れる。
あとは発生したベースで必要な例外を追加していけばいい。
508:デフォルトの名無しさん
07/12/13 04:34:09
今は特に言う事無いけど何か思いついたら次からここに書き込むよ
509:デフォルトの名無しさん
07/12/13 09:26:21
スルー時中断ワロタ
510:デフォルトの名無しさん
07/12/13 18:23:06
にゃるるで言及されてたC#のお偉いさんの話は本当なのだろうか。
もしマジだとしたら、ガクブルもので正直この先も使うか考えてしまう。
511:デフォルトの名無しさん
07/12/13 18:27:37
何の話か言えよ
512:デフォルトの名無しさん
07/12/13 19:09:25
ヘジたんが AOP 嫌いだとかクエリ式嫌いだと書かれてたアレ?
そんなガクブルな話書かれてたか?
513:デフォルトの名無しさん
07/12/13 20:18:43
>>512
そんなことは常識だろ
514:デフォルトの名無しさん
07/12/13 20:52:09
>>513
いや、だから、常識なのに何をガクブルしてんの?と。
515:デフォルトの名無しさん
07/12/13 21:34:46
クエリ式もあれはひどいよな
使い物にならん
516:デフォルトの名無しさん
07/12/13 22:38:37
いやいや、クエリ式は使い出すと便利でしょうがないよ。
517:デフォルトの名無しさん
07/12/13 22:41:45
>>516
LINQのほとんどの演算子が使えないのに?
518:デフォルトの名無しさん
07/12/13 22:59:40
>>517
どういうこと?
「LINQ to SQL では LINQ の標準クエリ演算子を全部サポートしてないのに?」といいたいのかな?
519:デフォルトの名無しさん
07/12/13 23:02:05
>>518
拡張メソッドでは呼び出せて、SQLにも使えるのに
クエリ式では使えないものがいっぱいあるだろ
520:デフォルトの名無しさん
07/12/13 23:11:29
>>519
ああ、そういうことね。
まあ、それでも、let とか2重 from とか使うときはクエリ式便利。
from x in a
from y in b
select new { x, y };
とか、クエリ式使わないと SelectMany 使って書くの大変よ。
521:デフォルトの名無しさん
07/12/13 23:16:59
正直letとか使われるとコードがわけわかんなくなる
拡張メソッドでいいじゃん
522:デフォルトの名無しさん
07/12/13 23:25:31
や、let はむしろ便利だろ
il からコード起こしてみたらすごいことになってたけどw
523:デフォルトの名無しさん
07/12/13 23:26:16
クエリ式この世からなくなってくれればコード読みやすくなるのに
524:デフォルトの名無しさん
07/12/14 00:33:05
csvファイルを読み込んで数値計算をさせたいのですけれど
どうやったらいいのか分かりません。
条件式書くのとcsvファイルを読み込んでそのまま出力することはできます。
むしろそれくらいしかできない初心者です。
アドバイスお願いします。
525:デフォルトの名無しさん
07/12/14 00:34:09
>>524
そのまま出力できるならその値を出力せずに計算すればよかろ
526:デフォルトの名無しさん
07/12/14 00:37:08
>>525
普通に計算式を書いてから、その後出力する処理を書けばいいということでしょうか?
527:デフォルトの名無しさん
07/12/14 00:38:05
>>526
その通りだ
528:デフォルトの名無しさん
07/12/14 00:41:13
>>527
あああああ そうだったんですか。
難しく考えすぎてました。ありがとうございました。ものすごく助かりました。
529:デフォルトの名無しさん
07/12/14 08:35:40
てもその計算式をどうやって解析するかは想像できてるか?
530:デフォルトの名無しさん
07/12/14 08:36:06
天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。
天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。
天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。
天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。天パ男死ね。バケモン。身障。気色悪すぎ。ボーズで天パ隠すなよ。
531:デフォルトの名無しさん
07/12/14 10:33:22
WinAPI の DllImport やら、 const int WM_HOGE みたいなのをC++ヘッダファイルから
自動生成するようなツールってないの? VB6 にあったやつみたいな。
それか、WinAPI をひたすらラッピングした .NET Frx 向けライブラリ。
532:デフォルトの名無しさん
07/12/14 10:38:01
>>531
こういうのは?
URLリンク(www.pinvoke.net)
533:デフォルトの名無しさん
07/12/14 11:14:51
>>532
おおサンクス。ググっても DllImport の解説やら、WinAPI を使ったサンプルばっか出てきて
困ってたんだよね。これで幸せになれそうだ。
534:デフォルトの名無しさん
07/12/14 12:18:55
たしかアドインでPInvoke関連のヤツがあったはず。
具体的に何を補助してくれるのかしらんが、余裕があれば試してみたらいい。
535:デフォルトの名無しさん
07/12/14 12:23:20
そのアドインも>>532のリンク先にある
536:デフォルトの名無しさん
07/12/14 15:06:38
隔離スレなのにずいぶん機能してるな
537:デフォルトの名無しさん
07/12/14 15:14:57
オライリー プログラミングC#
プログラミング Microsoft Visual C# 2005 言語編
C#の勉強をはじめる場合、どちらがお勧めですか?
538:デフォルトの名無しさん
07/12/14 15:29:59
難しくなさそうなのをちょっと読んで
あとは使ってれば分かる
539:デフォルトの名無しさん
07/12/14 17:47:31
>>537
すでにほかの言語が使えるなら、オライリーが無駄な説明がなく理解しやすい。
下はシラネ。ただ、言語編とかつくのは他のも読む前提で書かれてることが多い。
後、@itのC#入門改訂版ならタダで読める。正直助長な部分もあるが、本を買う前に一度見てみて、
それだけでは不十分だと感じてから本を買っても遅くないんじゃないか?
540:デフォルトの名無しさん
07/12/14 18:58:04
ってかMSDNとかの Microsoft 様のドキュメント読めば十分すぐるだろ・・・
541:デフォルトの名無しさん
07/12/14 20:11:48
>>540
リファレンスには十分だが、携行できないしいろんな意味で不十分
「C#の勉強を始める場合」だからな。
542:デフォルトの名無しさん
07/12/14 20:13:03
>>539
C++は使えるのとJAVAの文法の基本は分かっているので
オライリーにしてみます。MSの本は高すぎるのもネックです。
>>540
基本を押さえたら適宜参照してみます。
543:デフォルトの名無しさん
07/12/14 20:48:26
携行できないのはたしかにその通りだけど、↓あたりとか折角無料なのに
スルーしてしまうのはもったいないと思う。
URLリンク(msdn2.microsoft.com)
544:デフォルトの名無しさん
07/12/14 20:51:56
>>542
正直、C++ と Java 使えるなら MS のドキュメントだけで十分だと思うけど。
545:デフォルトの名無しさん
07/12/14 21:07:26
MSDNの
・C# プログラミング ガイド
・Java 開発者のための C# プログラミング言語
あたりに一通り目を通しとけば、まあいけると思うけどな。
どうしても紙媒体が好きならオライリーのC#いいと思うよ。
546:デフォルトの名無しさん
07/12/14 21:19:20
以外とWebですますっていう人間多いのか?
俺は新しい言語を勉強するときには、とりあえず一冊本を買うんだが、
Webだけだと記憶しづらくないか?
547:デフォルトの名無しさん
07/12/14 21:20:23
msdnはローカルに入れますよ
548:デフォルトの名無しさん
07/12/14 21:25:51
>>547
ごめん、Webっていうのは言葉のあやで、デジタルデータでってこと。
549:デフォルトの名無しさん
07/12/14 21:30:31
あんまり紙資源を無駄にしたくないから本は買わない
ウラニウムとどっちが無駄かは知らんけど
550:デフォルトの名無しさん
07/12/14 21:42:48
「Web ですます」というより、C# は「Web ですむ」。
それくらい日本語情報充実してる。
551:デフォルトの名無しさん
07/12/14 22:00:43
どっちにしろ公式のドキュメントには目を通しておく必要があるし、
MSの物の場合それだけで十分なことも多いからなぁ・・・
552:デフォルトの名無しさん
07/12/14 22:02:49
俺の場合基本的に本ですべてすませて、必要なところだけ公式のドキュメントを見る。
553:デフォルトの名無しさん
07/12/14 23:18:24
俺も情報をつかむ程度ならweb、じっくり勉強するなら本だな。
論文とかもできるだけ印刷して読む・・・あ、単純に紙媒体が好きなだけかな?結局好みの問題かも。
でもディスプレイとずっと睨めっこするのは辛くない?
というかMSDNは重いのが・・・
動的生成なサイトってイライラが溜まって好きじゃないんだよなw
554:デフォルトの名無しさん
07/12/14 23:30:20
>>553
禿胴。昔はモニター越しの情報も紙媒体も一緒だと考えてたんだが、
長年やってるうちに結局紙媒体の方が覚えやすいっていう結論になった。
555:デフォルトの名無しさん
07/12/15 00:38:52
オライリーの本は二部が難しいな。
のマーシャリングやらアセンブリやら属性、シリアル化とか
わけわからん。
ここはC#というよりは.NETの世界なんだろうけど。
556:デフォルトの名無しさん
07/12/15 00:57:36
>>555
二部って何を指してるの?
557:デフォルトの名無しさん
07/12/15 00:59:39
何らかの言語触ってりゃC#なんか一日で書けると思うが
まークラスライブラリは必要になったときに引くが
558:デフォルトの名無しさん
07/12/15 01:07:27
1日もかかるかよ
559:デフォルトの名無しさん
07/12/15 09:48:19
>>556
本の目次
560:デフォルトの名無しさん
07/12/15 10:01:01
>>557は本当に一日で習得できた?
プログラムを動かすだけならコピペでも出来るし、
それに一通り使えるようになった後ではいままでやってきたことがひどく簡単なことだったと思うもんだよ。
561:デフォルトの名無しさん
07/12/15 10:09:47
何らかの言語触ってりゃ
コボラー
絶対無理w
まあ、かけるだけならアホプログラムでも書けるといえなくもないから、
1日でとか短時間を自慢げに言うのって馬鹿にしか見えんよね。
562:デフォルトの名無しさん
07/12/15 10:13:54
このスレらしいくだらない話だなw
563:デフォルトの名無しさん
07/12/15 10:18:49
>>560
C++やらJavaやらやってたんで、楽勝だったよ。
564:デフォルトの名無しさん
07/12/15 10:20:54
文法理解しただけで「習得」したと思っちゃう人いるよね。
565:デフォルトの名無しさん
07/12/15 10:34:09
何らかの言語と
C++やjavaじゃぜんぜん条件が違うわけだが。
まあそんなことはどうでもいい。
できるって言うレベルが人によって違いすぎて何の意味もないわな。
566:デフォルトの名無しさん
07/12/15 10:42:55
URLリンク(blog.livedoor.jp)
> 私自信、新しいプログラミング言語を3日でマスターできなかったら負けだと思っている。
> もちろん「マスター」にもピンからきりまであるが、ここでいう「マスター」は、もちろんライ
> ブラリーやクラスを端から端まで覚えるということではなく、その言語の特徴をつかんで、
> 一目見てその言語で書かれた事がわかるようなコードを読み書きできることを指す。
567:デフォルトの名無しさん
07/12/15 10:47:36
C#なんて、2.0あたりまでは、メジャーな言語の寄せ集めみたいな文法で、
入門書をパラパラと読んで「ああ、こういう言語ね」と思えないようなヤツは不勉強すぎ。
568:デフォルトの名無しさん
07/12/15 10:48:53
言語自体の割合は小さくなってフレームワークなんかの割合がでかいって
偉い人も言ってたのにね。
569:デフォルトの名無しさん
07/12/15 10:52:31
1.1まででの壁はデリゲートぐらいか
2.0は匿名メソッド(のスコープ)
言語としてはこじんまり
570:デフォルトの名無しさん
07/12/15 11:09:48
あ、こういう言語ね
書ける
ここでいうマスター
はいはいなんの意味もないね。
ほんとに言語固有の部分は少ないしね。
まあそれでも仕様のボリュームはそれなりにあるけど、
ごく基本的な部分だけでもプログラムは書けるしな。
571:デフォルトの名無しさん
07/12/15 11:13:31
そんなんだから、ライブラリでも設計実装させたら
とんでもないことになったりする。
572:デフォルトの名無しさん
07/12/15 11:22:58
深く考えずに、細かいところを検証せずに
やたらマニアックなことする奴も氏ね、
コードは複雑で冗長でそのくせ穴だらけでたいして役にも立たない、
ああもうトラウマだぜ。
573:デフォルトの名無しさん
07/12/15 11:30:57
みんなすごいんだね。
俺なんて、他人のサンプルコード見ては
「なんだよ、このアトリビュート。どうやって学んだんだよ」
「このプログラムの設計ってまず何からどうやって作ったんだ?」
ってな感じで右往左往して
C言語で作ったプログラムをC#で組んでみようと思っても
上手くいかないし。
よし、JAVA宿題スレにそのプログラムの問題投稿して
解いてもらって、そこからJAVA経由で理解しようと
思ったけど、返ってきた答えが答えになってない
不完全なプログラムだったりして、どーしたもんかと考えたり・・・
基本構文はすぐに解ったけどオブジェクト指向が出来てない
自分に辟易する。
574:デフォルトの名無しさん
07/12/15 11:32:45
それは単に自分の頭が悪いだけで、
みんながすごいわけじゃなかろう。
575:デフォルトの名無しさん
07/12/15 11:35:21
>>573
あんまりふらふらせずに一つの言語に専念してみたらどうだろうか?
ここで上がってる多言語使える人間も、基本的には一つの言語を十分に学んでから、
その言語を起点して他の言語を学んでる人が多いはず。
複数の言語を同時に習得しようとすると、文法やメトリックを混同してまったく勉強できないことも多い。
俺は、とりあえずjavaが使えれば、基本的なOOP的言語は文法の違いだけですぐに覚えられると思う。
576:デフォルトの名無しさん
07/12/15 11:42:36
多言語を習得するというのは、実はそれほどすごいことじゃない。
文法とライブラリを使用する程度なら、その言語の主要概念(OOPとか)をすでに習得していればそれこそ丸一日あれば十分。
だから、Javaさえ覚えられればCやC++、C#は使えるも同然だし(言語固有の習慣や文法を除いて)、
言語を習得したっていうのは、言語の設計概念を理解してるかということに直結すると思う。
だから、一日で十分とかいってる人間も、似たような概念で構成された言語を、
今まで覚えた言語の概念を流用して使えるといってるわけで、
関数型言語をまったく知らない状態から、haskellを一日で自由に使えるわけがない。
577:デフォルトの名無しさん
07/12/15 11:53:33
>だから、Javaさえ覚えられればCやC++、C#は使えるも同然だし(言語固有の習慣や文法を除いて)
無茶ゆうなw
ってか、言語固有の習慣や文法を除いて
ってどういうこったよ?それはどう使えるっていうんだ?
C++まともじゃなくてもやったことあるなら
そんな台詞はどうやっても出てこん。
578:デフォルトの名無しさん
07/12/15 11:56:40
java屋がC#始めると変なとこだけ潔癖症でかなわん。
C#の文法でjavaを書く癖が直ってくれない。
579:デフォルトの名無しさん
07/12/15 12:01:02
あるある、チェック済み例外がうじうじとか言い出すよな。
580:デフォルトの名無しさん
07/12/15 12:17:54
>>573
そうだね。
こんだけオブジェクト指向が広まってるのに、たとえば、
「C一筋で10年、それ以外にはまったく興味もなくてすごしてしました。
いまさらC#やJavaなんてできません」
みたいなPGって激しくオワットルね。
581:デフォルトの名無しさん
07/12/15 12:23:13
C++勉強してればオブジェクト指向の概念自体はだいたいわかるんじゃないのかな。
時歳に使いこなせるかどうかは別だけど。
582:デフォルトの名無しさん
07/12/15 12:28:23
C++よりゃよっぽどオブジェクト指向部分に集中し易いjavaでも
結局思い切り人次第だからな~
583:デフォルトの名無しさん
07/12/15 13:14:59
>>577
同意。C++の複雑度はJAVAの比ではない。C++を知ってる人間なら
JAVAはえらく簡単に覚えられるが、その逆は真ではない。
584:デフォルトの名無しさん
07/12/15 13:34:40
C++は手動でメモリ管理しなきゃならんし
標準ライブラリも足りないものだらけだし
言語自体にも罠がいっぱいある
585:デフォルトの名無しさん
07/12/15 13:44:33
>>584
メモリ管理なら、今やスマートポインタを使わない
なんて考えられない。boostがよりいっそう充実して
ライブラリが進化することを期待する。現にそうなって
きている。