ふらっとC#,C♯,C#(初心者用) Part76
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2011/06/21(火) 15:52:07.36「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。
なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっとC#,C♯,C#(初心者用) Part75
http://hibari.2ch.net/test/read.cgi/tech/1307186987/
■関連スレ
C#, C♯, C#相談室 Part67
http://hibari.2ch.net/test/read.cgi/tech/1308128665/
ミスターサタンのC#相談室
http://hibari.2ch.net/test/read.cgi/tech/1092656075/
VB.NET質問スレ(Part36)
http://hibari.2ch.net/test/read.cgi/tech/1301828549/
くだすれC++/CLI(初心者用)part2
http://hibari.2ch.net/test/read.cgi/tech/1268613679/
0002デフォルトの名無しさん
2011/06/21(火) 15:52:35.26コードの量が多い場合は下記サイトを使うなどしたほうがいいかも
http://ideone.com/
コードを貼り付けてrun codeのチェックをはずしてsubmitボタンを押すと
コードを鯖側にアップして専用のアドレスが発行されます。
直接貼る場合は下記サイトなどを利用してhtmlエンコードした方が
インデントも残って見やすいです
http://kawama.jp/php/encode_html.php
0003デフォルトの名無しさん
2011/06/21(火) 19:58:10.49これを使ってyahooのトップページを開きます
その開いたページを上から下まで1つの画像にして保存する方法ってございませんか?
0004デフォルトの名無しさん
2011/06/21(火) 20:23:43.220005デフォルトの名無しさん
2011/06/21(火) 20:24:29.66超頑張ってね
http://www.squabu.com/CodeSamples/Samples/Tool/WebThumbnail.aspx
0006デフォルトの名無しさん
2011/06/21(火) 20:26:04.09ここか相談室で見たな
0007デフォルトの名無しさん
2011/06/21(火) 22:33:09.22マイコンとPCを連動して音を鳴らす間隔を測ってみましたが結構良い感じの精度になりました。
ありがとうございました
ブログに必要な部品と作る過程も公開してみました
0008デフォルトの名無しさん
2011/06/21(火) 22:35:05.820009デフォルトの名無しさん
2011/06/21(火) 22:40:04.92作っているんだが、よくよく考えたら、そんなことするくらいなら
C/C++で書けばいいんだな
0010デフォルトの名無しさん
2011/06/21(火) 22:44:35.91message "test";
って描いたらメッセージボックスを出すマクロみたいのを作りたいのですが
過程としてはプログラムでファイルを読み込む
1行ずつ文字列を取得する
messageって描いてあったらその次の"(.*?)";を検索して.*?の部分をMessageBox.Show("ここにいれる")
みたいな流れを初心者なりに考えてみたのですがこんな感じで作ればいいのでしょうか?
0011デフォルトの名無しさん
2011/06/21(火) 22:48:33.16Int32型はObject型から派生しているのですか?
0012デフォルトの名無しさん
2011/06/21(火) 22:54:14.46どこまで作るかによる。
単純なマクロでいいならそれでOKだと思う。
本当に使い勝手のよいマクロを作るならまずインタプリタかコンパイル型か設計段階で決めたほうがいいと思う。
両者では構文の設計自体が変わってくる。
gotoを許すのか?とかcontinueをどうやってサポートするか、breakはどこまで抜けるのか?
など。
0013デフォルトの名無しさん
2011/06/21(火) 23:09:55.23> C#におけるInt32型とはオブジェクトですか?組み込み型ですか?
オブジェクト。そして組み込み型intはSystem.Int32のエイリアス。
ついでに言うと値型=構造体。
> Int32型はObject型から派生しているのですか?
うん
Object - ValueType - Int32
0014デフォルトの名無しさん
2011/06/21(火) 23:16:25.26ありがとうございます。
C++でいうところの組み込み型のように見えているintですら参照型なのですね。
0015デフォルトの名無しさん
2011/06/21(火) 23:22:52.660016デフォルトの名無しさん
2011/06/21(火) 23:23:40.520017デフォルトの名無しさん
2011/06/21(火) 23:25:43.65Object型って参照型ですよね?
0018デフォルトの名無しさん
2011/06/21(火) 23:28:27.920019デフォルトの名無しさん
2011/06/21(火) 23:30:59.58ありがとうございます!
0020デフォルトの名無しさん
2011/06/21(火) 23:35:08.27コンパイルの仕方はぼくには難しいと断崖の絶壁に聳え立つニワトリさんを捕まえるようなハードルなのでインタプリタでやりたいとおもいます
ちょっといろいろかんがえてみます
0021デフォルトの名無しさん
2011/06/22(水) 00:16:46.62こんぱいるで
0022デフォルトの名無しさん
2011/06/22(水) 00:19:39.39ヒント: mono
0023デフォルトの名無しさん
2011/06/22(水) 00:43:11.07バカでかいランタイムを配布することになるし、
.NETの起動時間のボトルネックはJITよりファイルの読み込みだから起動が早くなるわけでもない
なんだかんだいって.NETは普及してしまったし
0024デフォルトの名無しさん
2011/06/22(水) 00:55:24.780025デフォルトの名無しさん
2011/06/22(水) 00:57:16.62usingは、言ってみりゃパスを通すだけ
0026デフォルトの名無しさん
2011/06/22(水) 02:51:44.55だな
usingで名前空間を上にかかなければコード中にその都度書かなければいけなくなって
コードが雑然とするだけ
ビルド後のコードに違いは無い(はず)
0027デフォルトの名無しさん
2011/06/22(水) 08:51:42.20int[] a = { 0, 1, 2};
前者と後者の違いはなんでしょうか?
0028デフォルトの名無しさん
2011/06/22(水) 09:26:19.38コンパイラが{}の型を決定してint[]の変数に代入できるかをチェックするか
じゃね
0029デフォルトの名無しさん
2011/06/22(水) 11:13:11.97てっきり、
int[] ary = {1,2,3,4};
ary[4] = 5;
とか出来るもんだと思ってた…
0030デフォルトの名無しさん
2011/06/22(水) 11:39:28.23誰だ使えって言ってる奴は
0031デフォルトの名無しさん
2011/06/22(水) 11:42:08.770032デフォルトの名無しさん
2011/06/22(水) 11:43:31.820033デフォルトの名無しさん
2011/06/22(水) 11:56:07.130034デフォルトの名無しさん
2011/06/22(水) 12:01:19.590035デフォルトの名無しさん
2011/06/22(水) 12:01:25.41後者は初期化時限定の略記法。
変数の定義と同時で、かつ、var を使わないときだけそう書ける。
前者はどこにでも書ける。
Method(new int[] { 1, 2, 3 });
とかも OK。
0036デフォルトの名無しさん
2011/06/22(水) 12:02:21.480037デフォルトの名無しさん
2011/06/22(水) 12:35:26.43TabPageが削除されたときに、TabPageの配列がズレるのが困る
例えばtabPage[0], tabPage[1], tabPage[2]とあるときにtabPage[1]を削除するとtabPage[0], tabPage[2]ってなるわけだけど
配列を簡単に整理する方法ってないの?
0038デフォルトの名無しさん
2011/06/22(水) 12:42:17.86List<>だったらremoveとかなかったっけ?
0039デフォルトの名無しさん
2011/06/22(水) 12:43:18.420040デフォルトの名無しさん
2011/06/22(水) 12:49:16.80それとも書籍を1冊ずつ極めたりしてるんですか?
このスレに向いた質問でないかも知れませんがC#の良い書籍とかサイトとかがよくわからない物でして…
0041デフォルトの名無しさん
2011/06/22(水) 12:51:03.84まずC#相談室のテンプレ見てみるのもいいかもしれないよ
0042デフォルトの名無しさん
2011/06/22(水) 13:01:27.60大体、都度検索 → 見つけたクラスを IntelliSense やら「定義に移動」やらで眺める → 近隣のクラスで再検索
のループ。
0043デフォルトの名無しさん
2011/06/22(水) 13:36:25.94絶対現場主義Visual C#実践講座―開発の現場から生まれた実践テクニック&TIPS集
には、ArrayListを使っちゃいけない理由とか書いてあるな
けっこうオヌヌメ
0044デフォルトの名無しさん
2011/06/22(水) 14:17:16.19これでおk
0045デフォルトの名無しさん
2011/06/22(水) 14:47:32.55ArrayList使うぜ
0046デフォルトの名無しさん
2011/06/22(水) 15:12:13.94ArrayList を使うのはいかなる理由を以てしても許さん。
0047デフォルトの名無しさん
2011/06/22(水) 18:27:25.18douga.exeとAxInterop.WMPLib.dllとInterop.WMPLib.dllも作られるのですがこれらのdllを使わないで作る方法ってないですか?
0048デフォルトの名無しさん
2011/06/22(水) 18:31:40.050049デフォルトの名無しさん
2011/06/22(水) 18:35:42.74ちょっとCでできないか調べてみます
0050デフォルトの名無しさん
2011/06/22(水) 19:41:16.77俺も実は引っかかった口だ。
罠クラスには困ったもんだ
0051デフォルトの名無しさん
2011/06/22(水) 19:58:01.38同じ著者が書いたあのふざけた(だけならいいけど、間違いだらけの)C言語本を読んだら
たぶん評価変わるよ
0052デフォルトの名無しさん
2011/06/22(水) 20:15:59.55もうArrayListなんて使わねぇー
0053デフォルトの名無しさん
2011/06/22(水) 20:19:34.49Z
0054デフォルトの名無しさん
2011/06/22(水) 20:25:38.470055デフォルトの名無しさん
2011/06/22(水) 20:27:40.680056デフォルトの名無しさん
2011/06/22(水) 20:27:52.59「これからの標準だ」とか本気で信じたのかな?
0057デフォルトの名無しさん
2011/06/22(水) 20:28:55.810058デフォルトの名無しさん
2011/06/22(水) 20:35:15.000059デフォルトの名無しさん
2011/06/22(水) 20:42:27.41VB並みのRADtoolなのにちゃんとしたOOP言語ってのが魅力的だった
javaのswingなど速度的に酷い出来だったからね
0060デフォルトの名無しさん
2011/06/22(水) 21:09:58.840061デフォルトの名無しさん
2011/06/22(水) 23:05:55.78自分は>>29だけど、なんでArrayListはこんなに嫌われてるの?
良かったら理由を教えてチョ。
0062デフォルトの名無しさん
2011/06/22(水) 23:08:38.030063デフォルトの名無しさん
2011/06/22(水) 23:12:19.38ただ旧式なだけ。
でも、何度も既出だけど、あえてArrayListを使う場面もないことはない
0064デフォルトの名無しさん
2011/06/22(水) 23:13:45.33こういうURIだけ一行コピペする人って自分の行為が何かキモいと思ってないのかなw
0065デフォルトの名無しさん
2011/06/22(水) 23:15:01.632. LINQで使うのが絶望的に面倒になる(毎回Castダルい、MatchCollection死ね)
006661
2011/06/22(水) 23:19:02.23もう古くて、Objectにキャストされるような
ArrayListをわざわざ使う必要は殆どないってことでOK?
0067デフォルトの名無しさん
2011/06/22(水) 23:21:36.370068デフォルトの名無しさん
2011/06/22(水) 23:27:16.87というか、Obsolete が付いてもいいレベル。
List<T> が完全に上位機能版。
0069デフォルトの名無しさん
2011/06/22(水) 23:29:31.88007061
2011/06/22(水) 23:29:39.16ありがとう。
0071デフォルトの名無しさん
2011/06/23(木) 00:09:58.370072デフォルトの名無しさん
2011/06/23(木) 00:42:31.69互換性のためだけに残されてる。
0073デフォルトの名無しさん
2011/06/23(木) 00:51:25.20ArrayListみたいな負の遺産が残る
0074デフォルトの名無しさん
2011/06/23(木) 00:55:36.69ArrayListは後で実装変えられるからクラスライブラリのパブリックメンバにしたりしてもいいんだけど
List<T>公開するのはパブリックフィールド公開するようなもん
ちゃんとやろうとしたらインターフェイス通したりしないといけなくて面倒
0075デフォルトの名無しさん
2011/06/23(木) 01:04:47.460076デフォルトの名無しさん
2011/06/23(木) 01:18:10.24Collection<T>などで回避できるからそのために非ジェネリックコレクションを使う必要はないけど
0077デフォルトの名無しさん
2011/06/23(木) 01:24:09.22List<T>でやっちゃいかんことはArrayListでもやっちゃいかん。
List<T>も別に継承できる(けども、普通、包含で使うけども)。
List<T>でだけ分析ツールが文句言ってくるのなら、
それはそもそもArrayListが忘れ去られた存在ってだけ。
0078デフォルトの名無しさん
2011/06/23(木) 01:31:57.72今の言語の能力じゃ無理なんだ
0079デフォルトの名無しさん
2011/06/23(木) 01:37:34.67そしてList<T>は継承の為にデザインされていない
そんだけ
0080デフォルトの名無しさん
2011/06/23(木) 01:45:28.300081デフォルトの名無しさん
2011/06/23(木) 01:49:07.34例えば↓のようなコードを書いたとする
http://ideone.com/CPlrz
このコードは現時点では5を表示するが
将来に渡って5を表示するとは保証していない
ArrayList.AddRangeがどのように実装されるかは基底クラスの作者に委ねられているからだ
ArrayList.AddRangeがArrayList.Addを呼び出して実装されるようになればこのコードは10を表示するだろう
0082デフォルトの名無しさん
2011/06/23(木) 02:00:01.22たとしても、baseの中でAddCountを足してる訳じゃないんだから結局5を返すんじゃないの
0083デフォルトの名無しさん
2011/06/23(木) 02:01:50.82TestListクラスでオーバーライドされてるからそうも行かない
ArrayList.AddRangeがArrayList.Addを呼んだ場合オーバーライドしたメソッドが呼ばれる
0084デフォルトの名無しさん
2011/06/23(木) 02:02:03.130085デフォルトの名無しさん
2011/06/23(木) 02:03:13.820086デフォルトの名無しさん
2011/06/23(木) 02:20:52.66困ったら使うのやめればいいだけのこと
0087デフォルトの名無しさん
2011/06/23(木) 06:32:59.83UserControlをToolStripControlHostで埋め込んだコンテキストメニューを開き,
表示されたUserControlを右クリックしてさらにコンテキストメニューを開きたいと考えています.
実際にこれを実装すると,2番目のコンテキストメニューを開いた地点で,1番目のコンテキストメニューが消えてしまいます.
消えないようにするにはどうすればよいでしょうか?
0088デフォルトの名無しさん
2011/06/23(木) 07:00:49.760089デフォルトの名無しさん
2011/06/23(木) 07:22:08.11使わないと損するよ
0090デフォルトの名無しさん
2011/06/23(木) 07:23:04.220091デフォルトの名無しさん
2011/06/23(木) 08:14:21.800092デフォルトの名無しさん
2011/06/23(木) 08:24:16.430093デフォルトの名無しさん
2011/06/23(木) 08:29:39.290094デフォルトの名無しさん
2011/06/23(木) 08:54:32.960095デフォルトの名無しさん
2011/06/23(木) 09:05:17.40List<T>のように配列使ったリストは勉強ではあまり出てこないかもね
配列が一杯になったらリサイズするだけだからリンクリストより簡単なくらいだが
0096デフォルトの名無しさん
2011/06/23(木) 10:56:04.74>UserControlをToolStripControlHostで埋め込んだコンテキストメニューを開き,
ちょっと何言ってるか分かんないです
0097デフォルトの名無しさん
2011/06/23(木) 11:37:42.92009887
2011/06/23(木) 12:01:22.89わかりにくい日本語ですみません...
ToolStripControlHost上で右クリックしてコンテキストメニューを開きたいと間が定ます.
つまりコンテキストメニュー上で右クリックしてさらにコンテキストメニューを開きたいと考えています.
ToolStripControlHostにはUserControlが埋め込まれています.
0099デフォルトの名無しさん
2011/06/23(木) 12:28:11.67010087
2011/06/23(木) 12:34:07.74ToolStripControlHostは
http://lh5.ggpht.com/_TufE6r6woBg/Sqd3pJIBx4I/AAAAAAAAAKQ/bn7sTDiFxk4/s1600-h/image%5B2%5D.png
みたいな感じで任意のコントローラを配置することができます.
で,配置したコントローラ上でコンテキストメニューを開くと土台のコンテキストメニューが消えてしまうので
この問題を解決できないかと悩んでいます.
0101デフォルトの名無しさん
2011/06/23(木) 13:05:15.700102デフォルトの名無しさん
2011/06/23(木) 13:29:42.01俺だったら普通にフォームでダイアログ表示させるがな・・・・
0103デフォルトの名無しさん
2011/06/23(木) 13:45:41.830104デフォルトの名無しさん
2011/06/23(木) 13:52:42.670105デフォルトの名無しさん
2011/06/23(木) 14:03:26.35void mulSparseMat32f(SparseMat& smat, Mat& src, Mat& dest, bool isTranspose) {
SparseMatIterator it = smat.begin(),it_end = smat.end();
for(;it!=it_end;++it)
http://opencv.jp/opencv2-x-samples/usage_of_sparsemat_2_superresolution
begin()やend()に相当するのが無いと思うけど、何を使えば良いのでしょう?
0106デフォルトの名無しさん
2011/06/23(木) 14:17:22.750107デフォルトの名無しさん
2011/06/23(木) 14:21:57.850108デフォルトの名無しさん
2011/06/23(木) 14:32:39.77続きはRangeヘッダをつけて要求する
レスポンスヘッダがContent-Range含んでなかったら残念賞
0109デフォルトの名無しさん
2011/06/23(木) 14:38:55.440110デフォルトの名無しさん
2011/06/23(木) 14:50:58.96元のメニューのClosingイベントで条件みてe.Cancel=trueにすりゃいいんじゃないか
0111デフォルトの名無しさん
2011/06/23(木) 17:07:35.58でも、紙の教科書に書かれてる似非コード見るよりも、
STL のソースコード眺めた方が勉強になったよ。
C# の場合、ちょっと逆コンパイルしないと見れないって問題はあるけども…
0112デフォルトの名無しさん
2011/06/23(木) 17:08:37.44作らざるを得なかった。
template すらなかった時代は、汎用コレクション書けなかったから。
void* (C# でいうなら object)のコレクション書いてキャスト(Java のジェネリック的な)ならできたけど、
パフォーマンス落ちるから嫌われた。
0113デフォルトの名無しさん
2011/06/23(木) 17:12:11.97.net frameworkはほとんどソース公開されてるでしょ
0114デフォルトの名無しさん
2011/06/23(木) 17:14:23.97まあ、mono の方見ればいいのか。
0115デフォルトの名無しさん
2011/06/23(木) 17:16:21.230116デフォルトの名無しさん
2011/06/23(木) 17:23:25.130117デフォルトの名無しさん
2011/06/23(木) 18:16:22.680118デフォルトの名無しさん
2011/06/23(木) 18:19:04.970119デフォルトの名無しさん
2011/06/23(木) 19:14:51.920120デフォルトの名無しさん
2011/06/23(木) 19:34:46.880121デフォルトの名無しさん
2011/06/23(木) 19:40:19.350122デフォルトの名無しさん
2011/06/23(木) 22:52:34.040123デフォルトの名無しさん
2011/06/23(木) 22:57:42.060124デフォルトの名無しさん
2011/06/23(木) 23:17:40.12{
private string testA = "あいうえお";
class Table
{
public void Table(string name)
{
//ここで上のtestAを得る方法はありますか?
}
}
}
0125デフォルトの名無しさん
2011/06/23(木) 23:22:34.290126デフォルトの名無しさん
2011/06/23(木) 23:25:06.74Library_SQLiteを渡して見る
0127デフォルトの名無しさん
2011/06/23(木) 23:28:21.460128124
2011/06/23(木) 23:31:46.61ありがと
0129デフォルトの名無しさん
2011/06/23(木) 23:33:09.670130デフォルトの名無しさん
2011/06/24(金) 00:38:24.93でもポインタ≠参照型とか一人で言い張ってる奴がいるんだよなw
0131デフォルトの名無しさん
2011/06/24(金) 00:41:49.510132デフォルトの名無しさん
2011/06/24(金) 01:06:49.14C# の用語としてのポインター型は参照型とは区別される。
一般用語としても、「ポインターを参照として使う」とかは自然だけど、=かと言われると。
C++ でも、まあ、ほぼ≒だけども、null 代入できない程度の差はあるし。
0133デフォルトの名無しさん
2011/06/24(金) 01:26:14.160134デフォルトの名無しさん
2011/06/24(金) 01:53:03.000135デフォルトの名無しさん
2011/06/24(金) 01:57:27.83それは参照と呼んでいいの?何を参照してるの?
0136デフォルトの名無しさん
2011/06/24(金) 02:06:07.360137デフォルトの名無しさん
2011/06/24(金) 02:08:45.71時空の狭間をだよ
0138デフォルトの名無しさん
2011/06/24(金) 02:33:14.030139デフォルトの名無しさん
2011/06/24(金) 06:59:17.05参照はオブジェクトのアドレスしか入れれない
でおk?
0140デフォルトの名無しさん
2011/06/24(金) 07:02:18.96GCが管理してるのでアドレスですらないかもしれない
GC内部の管理番号だったりするかも
0141デフォルトの名無しさん
2011/06/24(金) 07:09:37.790142デフォルトの名無しさん
2011/06/24(金) 08:46:08.110143デフォルトの名無しさん
2011/06/24(金) 09:45:07.700144デフォルトの名無しさん
2011/06/24(金) 10:11:10.810145デフォルトの名無しさん
2011/06/24(金) 10:58:50.11>>144
0146デフォルトの名無しさん
2011/06/24(金) 13:50:57.50C++がT*の方と区別してT&を参照って呼んだから。
0147デフォルトの名無しさん
2011/06/24(金) 15:02:55.870148デフォルトの名無しさん
2011/06/24(金) 15:32:57.560149デフォルトの名無しさん
2011/06/24(金) 15:48:42.13さしあたって何から始めればよかでしょうか。
向学心と折れない心は実装してると思います。
参考書や参考サイト、これは買っとけ/読んとけ な本などありましたら、ご教授いただければ幸いです。
0150デフォルトの名無しさん
2011/06/24(金) 15:49:26.61C# の参照みたいな、有効な場所しかさせなず、
そして場合によってはアドレスじゃなくて GC の管理してるハンドルとして持つもの。
GC がコンパクションで位置を移動させても正しくオブジェクトを参照するという概念。
単にアドレスを指し示すだけのポインターよりも一段階抽象度の高い概念。
0151デフォルトの名無しさん
2011/06/24(金) 15:50:28.86C# でググって上に出て来るサイトで OK。
0152デフォルトの名無しさん
2011/06/24(金) 15:50:57.79他言語の経験あるなら未確認飛行C++++読めばいいと思います
0153デフォルトの名無しさん
2011/06/24(金) 15:54:10.230154デフォルトの名無しさん
2011/06/24(金) 15:54:15.68とりあえず読むより何か作ってみればおk
0155デフォルトの名無しさん
2011/06/24(金) 15:54:16.13あれでオブジェクト指向理解できたら天才
0156デフォルトの名無しさん
2011/06/24(金) 15:58:24.77javaは全部抽象化で解決する文化があるせいでヤバィ
0157デフォルトの名無しさん
2011/06/24(金) 15:59:55.04スーパークラスって言葉は汎化、より機能が少なて広い概念側を指すから逆じゃね?
0158デフォルトの名無しさん
2011/06/24(金) 15:59:55.56VB.netじゃだめなんですかと聞いてみろ。
0159デフォルトの名無しさん
2011/06/24(金) 16:00:08.20その知識だけで触ってみれば大丈夫
俺もCとVB6の知識だけでやってるけど、何とかなってる
0160デフォルトの名無しさん
2011/06/24(金) 16:03:37.49殆ど使われなかったほど不便だったけど
0161デフォルトの名無しさん
2011/06/24(金) 16:05:01.73大丈夫、実は俺も何を言ってるのか分かりません
0162デフォルトの名無しさん
2011/06/24(金) 16:05:23.05「他の言語ではできるけど、C#では絶対にできないことって何?」
0163デフォルトの名無しさん
2011/06/24(金) 16:06:46.81ありがとうございます。
.net Frameworkによる開発自体、さわったことも見たこともなく、まったくの初心者なのですが
プラットフォームSDKなども無料で手に入るのですね。
とりあえずはExpressをダウンロードして始めてみようと思います。
入門書はどれも大同小異でしょうか?「入門」とタイトルについたものを買おうと思っているんですが・・・
0164デフォルトの名無しさん
2011/06/24(金) 16:07:30.830165デフォルトの名無しさん
2011/06/24(金) 16:09:03.69C#の文法に従わないこと
チューリング完全なんだからあとは言語関係なく処理系次第
0166デフォルトの名無しさん
2011/06/24(金) 16:09:03.99http://www.amazon.co.jp/dp/4822294307/
あと、独習C#の第二版はちょっと古すぎでしょうか?基本は同じと思うのですが、
今は.net Frameworkって3.5ですよね。
0167デフォルトの名無しさん
2011/06/24(金) 16:09:50.820168デフォルトの名無しさん
2011/06/24(金) 16:11:49.53たとえばC#2008のexpressをダウンロードした場合、VB6との共存は無理ですか?
0169デフォルトの名無しさん
2011/06/24(金) 16:12:57.090170デフォルトの名無しさん
2011/06/24(金) 16:14:38.05最新版はC#2010だよ
0171149=163=166=168
2011/06/24(金) 16:14:45.54>>166の本とあわせ読みつつ、教えていただいたサイトでなんとかやってみます。
ありがとうございました。
0172デフォルトの名無しさん
2011/06/24(金) 16:17:18.67C#の入門書なんて読んだことねぇw
とりあえずdobonで十分かと
http://dobon.net/
てか、ググる時は「C# なんちゃら」じゃなく「dobon なんちゃら」のほうが速かったりする
0173149=163=166=168
2011/06/24(金) 16:17:22.63環境については会社からの指示もありますので、おそらく2008になると思います。
0174デフォルトの名無しさん
2011/06/24(金) 16:21:01.44まー良いけど
FrameWorkはXPの標準が2.0で7が3.5だから、汎用で作るなら2.0を選択しとけ
0175デフォルトの名無しさん
2011/06/24(金) 16:24:47.510176デフォルトの名無しさん
2011/06/24(金) 16:41:24.130177デフォルトの名無しさん
2011/06/24(金) 16:45:19.430178デフォルトの名無しさん
2011/06/24(金) 16:54:09.46{
private myWindow(){
InitializeComponent();
}
private static myWindow mw =new myWindow();
public static myWindow Instance{get {return mw;}}
}
ってやってシングルトンなウィンドウつくったんだけど、これのownerをメインウィンドウに設定する方法ってどうやったらいいんでしょう?
0179デフォルトの名無しさん
2011/06/24(金) 17:00:38.64ちゅーか、会社からの指示で2008になるって、
そんなお仕事モードなのに初心者って何?
ど素人からSE育成してるのか?その会社。ある意味すごくね?
0180デフォルトの名無しさん
2011/06/24(金) 17:06:46.070181デフォルトの名無しさん
2011/06/24(金) 17:10:47.53XP だとちょっともっさりかもなぁ<2010
自分は Vista 以降でしか使ったことないのでなんとも。
0182デフォルトの名無しさん
2011/06/24(金) 17:15:24.97http://msdn.microsoft.com/ja-jp/library/system.windows.window.owner.aspx
>この Window を所有する Window を取得または設定します。
>public Window Owner { get; set; }
設定すればいいんじゃね?
0183デフォルトの名無しさん
2011/06/24(金) 18:14:08.45ありがとうございます
新しいウィンドウを
myWindow.Instance.show();
で表示させるとして、例えばメソッドを呼び出したクラスをmyWindowに渡して、ownerをそれに設定する、とかは可能でしょうか?
0184デフォルトの名無しさん
2011/06/24(金) 18:58:31.40すればいいんじゃね
0185デフォルトの名無しさん
2011/06/24(金) 20:30:25.78myWindow.Instance.show();
とするたびに
myWindow.Instance.Owner = this;
をセットで書くということでしょうか?
いまmyWindowクラスにメソッド
public static void myWindowCall ( Window Yobidasimoto )
{ cw_instance.Owner = Yobidasimoto;
cw_instance.Show(); }
を追加して、呼び出し元からは
myWindow.myWindowCall(this);
と処理してみたのですが、こういった方法には何か問題がありますか?
0186デフォルトの名無しさん
2011/06/24(金) 20:33:05.650187デフォルトの名無しさん
2011/06/24(金) 20:36:22.770188デフォルトの名無しさん
2011/06/24(金) 20:45:11.00全く無い
0189デフォルトの名無しさん
2011/06/24(金) 20:45:11.41ReaderForTextとかなら、ちょっとはマシかも知れんが…。
0190デフォルトの名無しさん
2011/06/24(金) 20:46:17.67多分StreamReaderを抽象クラスに、TextReaderを実装クラスにしろってことだと思う
単語の順のことだったら意味分からんもん
0191デフォルトの名無しさん
2011/06/24(金) 21:39:58.500192デフォルトの名無しさん
2011/06/24(金) 21:41:20.92TableLayoutPanelとかそんなん?
0193デフォルトの名無しさん
2011/06/24(金) 21:41:29.380194デフォルトの名無しさん
2011/06/24(金) 21:55:32.46丁寧にありがとうございました
0195デフォルトの名無しさん
2011/06/24(金) 23:14:47.850196デフォルトの名無しさん
2011/06/24(金) 23:17:53.040197デフォルトの名無しさん
2011/06/24(金) 23:21:40.49作ったゲームを配布するので.net2.0が入っているパソコンで動かせればいいのですが
slimdxとxnaの二つのどちらかお選べばよいでしょうか?
0198デフォルトの名無しさん
2011/06/24(金) 23:26:43.370199デフォルトの名無しさん
2011/06/24(金) 23:39:42.67慣れてきたらSlimDXに移ってもいい
XNAの方が情報の量が圧倒的に多いからSlimDX使うにしてもXNAの情報のお世話になることになる
0200デフォルトの名無しさん
2011/06/24(金) 23:51:06.260201デフォルトの名無しさん
2011/06/24(金) 23:53:50.590202デフォルトの名無しさん
2011/06/24(金) 23:56:34.85XNAいれてみます
ダウンロードサイズが大きいいのですが
これを使って作ったゲームを動かすパソコンにXNAをインストールしてもらう必要はありますか?
0203デフォルトの名無しさん
2011/06/25(土) 00:00:12.31面白いねー
0204デフォルトの名無しさん
2011/06/25(土) 00:11:33.400205デフォルトの名無しさん
2011/06/25(土) 00:21:10.50おまえ生きてる意味あんの?
0206デフォルトの名無しさん
2011/06/25(土) 00:25:47.59あるけど遊ぶだけならランタイムの方を入れるだけだからサイズはそんなに大きくない
今時DirectXでも最新のバージョン使ったらランタイムのインストールはたいがい必須
0207デフォルトの名無しさん
2011/06/25(土) 00:35:38.47おまえ生きてる意味あんの?
0208デフォルトの名無しさん
2011/06/25(土) 00:39:08.190209デフォルトの名無しさん
2011/06/25(土) 01:37:43.02KoBuShiは肉体言語におけるオブジェクトのいかなる形状に対しても通信が可能です。
KoBuShiをあまり使いすぎるとターゲットのオブジェクトを破壊してしまうので、使いすぎには最深の注意が必要です。
なお、肉体言語にはKoBuShiとよく似たKeRiもあります。
しかし、KeRiはターゲットオブジェクトの破壊を促進しやすいことやレイテンシーの問題により非推奨の機能となっています。
続きはWebで!!
0210デフォルトの名無しさん
2011/06/25(土) 01:47:33.13おまえ生きてる意味あんの?
0211デフォルトの名無しさん
2011/06/25(土) 01:48:23.890212デフォルトの名無しさん
2011/06/25(土) 01:51:10.53おまえ生きてる意味あんの?
0213デフォルトの名無しさん
2011/06/25(土) 05:38:05.01{
int a {get; set;}
}
ってな具合に定義して
foo.aの参照先を
class bar
{
private _a;
public a
{
get{return _a;}
set{_a = value;}
}
}
って感じのbar.aにしたいのだけどよい方法ないかな?
bar.aを変えたら、foo.aも変わってて欲しいのだけど
0214デフォルトの名無しさん
2011/06/25(土) 06:10:14.02そういうデータバインディング的挙動、方法はあるにはあるけども、それなりに面倒。
コード生成なりリフレクションなり使いまくりなコードになりがちで、
ちょっと現状だと、ここでさらっと(行数制限にかからない分量で)は書けない。
0215デフォルトの名無しさん
2011/06/25(土) 10:34:48.090216デフォルトの名無しさん
2011/06/25(土) 10:49:35.640217デフォルトの名無しさん
2011/06/25(土) 10:52:04.70好きなようにやれ
仕事での話なら周りの様子を伺え
0218デフォルトの名無しさん
2011/06/25(土) 13:28:17.64{
public static int a
{
get{ return bar.a;}
set{ bar.a = value; }
}
}
class bar
{
private static _a;
public static int a
{
...
}
}
0219デフォルトの名無しさん
2011/06/25(土) 13:37:00.010220デフォルトの名無しさん
2011/06/25(土) 13:52:39.550221デフォルトの名無しさん
2011/06/25(土) 13:54:57.980222デフォルトの名無しさん
2011/06/25(土) 14:07:10.930223デフォルトの名無しさん
2011/06/25(土) 17:41:37.81できるにはできる
キーワードはデータバインディングとリフレクションっと
アドバイスありがトン
参照してるデータは一箇所なのに
そのデータを参照してる構造体が複数あって
全部書き換えようと思うと、重たいのよ
ポインタで持っててくれれば、参照先変えるの楽なんだけどなぁ
0224デフォルトの名無しさん
2011/06/25(土) 17:55:59.76StructLayoutが必要でも、暗黙変換で誤魔化せるかもしれないし
0225デフォルトの名無しさん
2011/06/25(土) 18:00:47.460226デフォルトの名無しさん
2011/06/25(土) 18:14:44.05どういう用途か知らんけど、それが実現したら
自分で変えたつもりもないのに、いつのまにか変数が変わってるわけか……
混乱招きそうな気がするのは俺だけかな。
0227デフォルトの名無しさん
2011/06/25(土) 20:04:06.710228デフォルトの名無しさん
2011/06/25(土) 20:22:20.11詳しく話すと、DXライブラリはVERTEX3D構造体(3Dの頂点データ)の
テクスチャ座標を特定のクラスで管理してアニメーションとかやりたいってわけ
頂点データを1フレーム毎に全部書き換えると処理落ちしちゃうから
構造体内部で参照してるアドレスを指定できたら実態を変えたら全部変わるんじゃない?
って発想なのよ
だめそうなら、アニメーションはやらない方向で考えるんだけどね
0229デフォルトの名無しさん
2011/06/25(土) 20:33:48.740230デフォルトの名無しさん
2011/06/25(土) 20:52:57.42ああ、そっか
構造体の実データって連続したメモリ空間で、
参照を指定してるのは、その先頭アドレスだけだっけか?
それじゃ、個々のデータの参照指定とか不可能だよね
1フレームで全部のデータ書き換え不可能って前提だと
あきらめるか、アニメーション部分を切り離すしかないのね
方針見えてきたわ、ありがトン
0231デフォルトの名無しさん
2011/06/25(土) 21:44:20.180232デフォルトの名無しさん
2011/06/25(土) 21:49:36.470233デフォルトの名無しさん
2011/06/25(土) 22:09:03.820234デフォルトの名無しさん
2011/06/25(土) 22:17:07.750235デフォルトの名無しさん
2011/06/25(土) 22:32:40.580236デフォルトの名無しさん
2011/06/25(土) 22:40:37.57元Borland社員が、 (Borlandの方針変更等により) 大量にMicrosoftへ移籍
↓
DelphiやC++Builderのノウハウを活かし、C#を開発
なので、Borlandが造った訳じゃない
0237デフォルトの名無しさん
2011/06/25(土) 22:45:53.150238デフォルトの名無しさん
2011/06/25(土) 22:51:04.550239デフォルトの名無しさん
2011/06/25(土) 22:51:27.690240デフォルトの名無しさん
2011/06/25(土) 22:52:17.66こっちにしとけよ
ttp://msdn.microsoft.com/ja-jp/library/67ef8sbd(v=VS.100).aspx
0241デフォルトの名無しさん
2011/06/25(土) 22:58:35.88VC#wに頼らず秀丸とcscで一通りやってみたいと思います
(VC#でやってたら配列の宣言の仕方とかいろいろ壁にあたったので)
0242デフォルトの名無しさん
2011/06/25(土) 23:01:55.39ひどい八つ当たりを見た
0243デフォルトの名無しさん
2011/06/25(土) 23:03:38.95まあ趣味でやるなら何でもいいが
0244デフォルトの名無しさん
2011/06/25(土) 23:07:24.38なので秀丸で修行してからしたいのです
0245デフォルトの名無しさん
2011/06/25(土) 23:26:01.660246デフォルトの名無しさん
2011/06/25(土) 23:52:49.09namespace test
{
class Test
{
static void Main(string[] args)
{
System.Console.WriteLine(args[0]);
}
}
}
引数を与えないと強制終了します
これはどう書き直したらよいでしょうか?
0247デフォルトの名無しさん
2011/06/25(土) 23:53:46.86{
if(args.Length==0){
return;
}
System.Console.WriteLine(args[0]);
}
0248デフォルトの名無しさん
2011/06/25(土) 23:57:35.59for (int i = 0; i < tabs; i++)
{
toolstripitem.Add(new ToolStripMenuItem());
toolstripitem[i].Name = "メモ[" + i + "]_ToolStripItem";
toolstripitem[i].Text = "メモ[" + i + "]";
toolstripitem[i].Click += (object sender2, EventArgs e2) => DeleteData(i);
this.タブを削除ToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] {
this.toolstripitem[i]});
}
これでビルドして実行するとループ終了条件時のiの値がDeleteData()メソッドに渡されてしまいます・・・
その時その時のiの値をDeleteDataメソッドに渡すにはどうすればいいでしょうか?教えてください
0249デフォルトの名無しさん
2011/06/25(土) 23:57:55.11テンプレとして書くクセをつけるように
0250デフォルトの名無しさん
2011/06/25(土) 23:58:08.75どんだけ、ヲタだよw
ほかにやることねーのかよ
0251デフォルトの名無しさん
2011/06/25(土) 23:58:45.410252デフォルトの名無しさん
2011/06/26(日) 00:01:06.190253デフォルトの名無しさん
2011/06/26(日) 00:01:49.92作り方次第じゃないかな。
古くから言われてるけども、原理的には仮想マシン通したりガベコレ使ってる分C#の方が遅い。
けど、それはプログラマーが超がんばってチューニングすればであって、適当だとそんなに差が出ない。
0254デフォルトの名無しさん
2011/06/26(日) 00:02:30.57for (int i = 0; i < tabs; i++)
{
int j = i;
toolstripitem.Add(new ToolStripMenuItem());
toolstripitem[i].Name = "メモ[" + i + "]_ToolStripItem";
toolstripitem[i].Text = "メモ[" + i + "]";
toolstripitem[i].Click += (object sender2, EventArgs e2) => DeleteData(j);
this.タブを削除ToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] {
this.toolstripitem[i]});
}
このコードの意味が理解できるまでラムダ使うの止めろ
禁止だ
0255デフォルトの名無しさん
2011/06/26(日) 00:03:43.840257デフォルトの名無しさん
2011/06/26(日) 00:17:49.930258デフォルトの名無しさん
2011/06/26(日) 00:29:38.64iはループの間ずっと同じインスタンスだ
jはループする度に新しいインスタンスが作成されている
この差だ
0259デフォルトの名無しさん
2011/06/26(日) 00:32:00.49まあ、作り方次第だってば。
そうなることもある程度にはC#は速い。
0260デフォルトの名無しさん
2011/06/26(日) 00:37:19.860261デフォルトの名無しさん
2011/06/26(日) 05:14:15.510262デフォルトの名無しさん
2011/06/26(日) 05:41:22.84今の MS 実装はそう。C++。
Mono の C# コンパイラーは C# で書いてる。
今進めてる Roslyn(Compiler as a Service)ってプラン(.NET 5 よりさらに先)では、
C# コンパイラーを C# で再実装中。
0263デフォルトの名無しさん
2011/06/26(日) 10:39:54.25型について
int
float
string
char
var
object
bool
byte
以外に型ってありますか?
あとvarで宣言した変数の型を知る方法はございませんか?
たとえばvar a = 1;とかvar a = "test";などの型をintとかstringって知りたいのです
0264デフォルトの名無しさん
2011/06/26(日) 10:43:22.42int b = 20;
System.Console.WriteLine(a+b);
は実行しても何も表示されません
System.Console.WriteLine("こんにちは");
は表示されました
何故ですか?
0265デフォルトの名無しさん
2011/06/26(日) 10:45:07.11varは型じゃない
貴方が言ってるのはおそらく基本型のことで
普通「型」と言った場合はobjectから派生する全ての型を指す
とりあえず↓に載ってるクラス全部
http://msdn.microsoft.com/ja-jp/library/ms229335%28v=VS.80%29.aspx
型を知る方法
var a = 1;
Type t = a.GetType();
0266デフォルトの名無しさん
2011/06/26(日) 10:51:36.75>System.Console.WriteLine(a+b);
>は実行しても何も表示されません
そんなこと無いと思うけど
http://ideone.com/9PVLT
0267デフォルトの名無しさん
2011/06/26(日) 10:58:41.75勉強になりました
0268デフォルトの名無しさん
2011/06/26(日) 11:02:12.47if (0 == args.Length) return;
を書いてて引数が何もなかったため実行されてなかっただけでした
0269デフォルトの名無しさん
2011/06/26(日) 11:21:21.93スタック上とヒープ上っていうのがいまいちよくわかりません
objectは遅いって聞いた事があるのでヒープ上は遅そうで
intで指定したほうが早そうなのでスタック上のほうが能力が上みたいな感じであってますか?
0270デフォルトの名無しさん
2011/06/26(日) 11:25:23.77スタックはアプリが起動するときにすでに割り当てられてるメモリの一部
ヒープっていうのはOSに割り当ててくれと要求を出して割り当ててもらうメモリ
OSに要求を出す分重いけどスタックほど使用量を気にしなくていい
スタックの場合は使い方によってはオーバーフローすることもある
0271デフォルトの名無しさん
2011/06/26(日) 11:26:36.50型の容量が16バイトを越える場合はヒープに取った方が良いとされている
構造体にするとスタック上に、クラスにするとヒープ上に取られる
そしてやむを得ない場合を除いて基本的にobjectで宣言すべきではない
0272デフォルトの名無しさん
2011/06/26(日) 11:27:04.88この比較の仕方、昔ちょっと流行った希ガス。
0273デフォルトの名無しさん
2011/06/26(日) 11:29:43.93代入のバグを避けるためのものだろう
C#には基本的に要らないけど
0274デフォルトの名無しさん
2011/06/26(日) 11:33:44.90何か難しいですね
PHPしか触ったことないのでそういうの意識したことありませんでした
例えばFirefoxが重いのはヒープとスタックの使い方が正しく使われてないからなんですね
要所要所でobjectにしたりintなどの型で宣言して使い分けたいと思います
0275デフォルトの名無しさん
2011/06/26(日) 11:41:26.900276デフォルトの名無しさん
2011/06/26(日) 11:46:39.93今でも愛用してるんだ?
0277デフォルトの名無しさん
2011/06/26(日) 11:50:52.99うちは規約だ
0278デフォルトの名無しさん
2011/06/26(日) 11:57:23.58VC#2010からdynamicが使えますけど object型よりdynamic型を使うほうが主流じゃないんですか?
0279デフォルトの名無しさん
2011/06/26(日) 11:59:42.860280デフォルトの名無しさん
2011/06/26(日) 12:02:20.48良い組織だね。
箸を持つ手が「右手」とかも…ちと違うか。
0281デフォルトの名無しさん
2011/06/26(日) 12:04:45.85dynamicを使うのは上級者ってこと?
0282デフォルトの名無しさん
2011/06/26(日) 12:08:02.760283デフォルトの名無しさん
2011/06/26(日) 12:16:09.990284デフォルトの名無しさん
2011/06/26(日) 12:18:28.830285デフォルトの名無しさん
2011/06/26(日) 12:22:08.00これは本当
0286デフォルトの名無しさん
2011/06/26(日) 12:45:38.08{
A = "aaa",
B = "bbb",
}
static void Main()
{
Console.WriteLine((byte)St.A);
}
enumに文字列を使いたいのですがどうやればエラーがでなくなりますか?
0287デフォルトの名無しさん
2011/06/26(日) 12:47:40.900288デフォルトの名無しさん
2011/06/26(日) 12:54:49.45protected enum St
{
aaa,
bbb,
}
static void Main()
{
Console.WriteLine(St.A.ToString());
}
0289デフォルトの名無しさん
2011/06/26(日) 13:00:53.540290デフォルトの名無しさん
2011/06/26(日) 13:06:40.820291デフォルトの名無しさん
2011/06/26(日) 13:23:25.780292デフォルトの名無しさん
2011/06/26(日) 13:25:22.820293デフォルトの名無しさん
2011/06/26(日) 13:27:45.860294デフォルトの名無しさん
2011/06/26(日) 13:29:34.54http://msdn.microsoft.com/ja-jp/library/ms173114.aspx
プロパティ
http://msdn.microsoft.com/ja-jp/library/x9fsa0sw%28v=VS.100%29.aspx
0295デフォルトの名無しさん
2011/06/26(日) 13:33:13.45メソッドは()の中にパラメータを設定して
プロパティは = の後に値を設定するやつってこです
0296デフォルトの名無しさん
2011/06/26(日) 14:00:42.60> C# コンパイラーを C# で再実装中。
これにどんな意味があるのかなあって思ってたことがありました。
0297デフォルトの名無しさん
2011/06/26(日) 16:18:33.850298デフォルトの名無しさん
2011/06/26(日) 16:51:55.43はどれでしょうか?
独自規約のベースとして使われている場合を含めて
いちばん使われているであろう規約を調べています。
みなさんがよく使われているなと感じるものをあげてください。
0299デフォルトの名無しさん
2011/06/26(日) 16:56:15.460300デフォルトの名無しさん
2011/06/26(日) 17:47:48.03.NETのクラスライブラリ設計
開発チーム直伝の設計原則,コーディング標準,パターン
http://ec.nikkeibp.co.jp/item/books/C08500.html
これを推す
0301デフォルトの名無しさん
2011/06/26(日) 17:48:44.18まあ、主流って言われたら、object も dynamic も使わないのが主流だろ。
正確に、必要十分な要件を満たす型で受ける。
0302デフォルトの名無しさん
2011/06/26(日) 17:49:54.92C# を C# で再実装ってだけだと意味は対してないけども、
内部構造が標準ライブラリとして公開される。
コンパイルの過程の途中にフックできる。
0303デフォルトの名無しさん
2011/06/26(日) 17:58:50.07初心者が見ても役に立つ質問回答してくれよ。
0304デフォルトの名無しさん
2011/06/26(日) 18:04:21.160305デフォルトの名無しさん
2011/06/26(日) 18:11:14.670306デフォルトの名無しさん
2011/06/26(日) 18:12:05.80素晴らしい
0307デフォルトの名無しさん
2011/06/26(日) 18:15:40.290308デフォルトの名無しさん
2011/06/26(日) 18:22:03.30間違えないでほしいんだな
0309デフォルトの名無しさん
2011/06/26(日) 19:58:57.44pro版を試す で16日評価版インスコすれば入るのですか?
それともWEBと同じ英語版?
それとも入らない?
0310デフォルトの名無しさん
2011/06/26(日) 20:15:05.88C# の仕様書、ウェブで手に入るのと全く一緒。
日本語版もウェブにある。
0311デフォルトの名無しさん
2011/06/26(日) 20:34:05.730312デフォルトの名無しさん
2011/06/26(日) 20:52:35.51配列の宣言の仕方がいろいろ書いてありますけどよく使われるのはどのやりかたですか?
個人的には$a = array(1,2,3);のような畑から来たので
int[] array3 = { 1, 2, 3, 4, 5, 6 };が良いかなと思っているのですが
0313デフォルトの名無しさん
2011/06/26(日) 20:52:45.650314デフォルトの名無しさん
2011/06/26(日) 21:10:47.87Microsoftが薦めるようにするのが多いということですね。
レスありがとうございました。
0315デフォルトの名無しさん
2011/06/26(日) 21:17:56.140316デフォルトの名無しさん
2011/06/26(日) 21:25:31.290317デフォルトの名無しさん
2011/06/26(日) 21:26:38.37そもそもコンパイル言語ではスクリプト言語に比べると配列をリテラルで書くこと自体が少ないがそれは置いといて
その書き方がたぶん一番よく使われるけど、型推論などの最近の機能との一貫性を考えると
new[] { 1, 2, 3, 4, 5, 6 }とnew[]付けるのが今風かな
0318デフォルトの名無しさん
2011/06/26(日) 21:48:30.070319デフォルトの名無しさん
2011/06/26(日) 21:53:51.27配列じゃないけど
0320デフォルトの名無しさん
2011/06/26(日) 22:07:42.94Webkit.NETというオープンソースのを試してみたのですがDOMが使えないようなのでダメっぽい感じでした
有償でもいいのでDOMまで使えるWebkitライブラリありませんか?
0321デフォルトの名無しさん
2011/06/26(日) 22:11:44.75後ろにDelegateって付けとけ。
GetXXXXDelegate
0322デフォルトの名無しさん
2011/06/26(日) 22:22:42.54http://msdn.microsoft.com/ja-jp/library/ms229040.aspx
ガイドライン違反
0323デフォルトの名無しさん
2011/06/26(日) 22:26:14.580324デフォルトの名無しさん
2011/06/26(日) 22:33:43.180325デフォルトの名無しさん
2011/06/26(日) 22:37:36.370326デフォルトの名無しさん
2011/06/26(日) 22:38:47.61実例もあまり見ないし
0327デフォルトの名無しさん
2011/06/26(日) 22:40:25.130328デフォルトの名無しさん
2011/06/26(日) 22:42:36.270329デフォルトの名無しさん
2011/06/26(日) 22:47:30.44イベント ハンドラではないデリゲートの名前には、サフィックス Callback を追加する。
0330デフォルトの名無しさん
2011/06/26(日) 22:58:32.540331デフォルトの名無しさん
2011/06/26(日) 23:12:35.01FuncやActionで済むものはそれらを使ったほうが良い局面もいっぱい。
あと、EventHandler<T>はもっと積極的に使ってほしいね(.NETのライブラリ自体も……)
0332デフォルトの名無しさん
2011/06/26(日) 23:13:07.39良い規約だね。
0333デフォルトの名無しさん
2011/06/26(日) 23:13:20.32移行の理由よければ教えて
0334デフォルトの名無しさん
2011/06/26(日) 23:21:17.09Delegate は Delegate なんだから Delegate でいいんだよ。
0335デフォルトの名無しさん
2011/06/26(日) 23:22:11.050336デフォルトの名無しさん
2011/06/26(日) 23:23:14.360337デフォルトの名無しさん
2011/06/26(日) 23:24:29.72それなら許す
0338デフォルトの名無しさん
2011/06/26(日) 23:24:45.40使いこなし法を教えてくれねーと
0339デフォルトの名無しさん
2011/06/26(日) 23:29:10.01クラスにはClassってサフィックスを付ける?
0340デフォルトの名無しさん
2011/06/26(日) 23:32:18.84ベースクラスの名前をつけます。
0341デフォルトの名無しさん
2011/06/26(日) 23:44:40.860342デフォルトの名無しさん
2011/06/26(日) 23:52:05.650343デフォルトの名無しさん
2011/06/26(日) 23:56:06.53コード中に出てくるなら、クラスとインスタンス
0344デフォルトの名無しさん
2011/06/26(日) 23:57:44.89newつけて配列作ることにしたいと思います
0345デフォルトの名無しさん
2011/06/26(日) 23:58:53.70C#では特別な名前でジャグ配列と呼んでいるという認識でおkですか?
0346デフォルトの名無しさん
2011/06/27(月) 00:05:33.780347デフォルトの名無しさん
2011/06/27(月) 00:15:41.06C#だと2次元配列も配列の配列じゃ無かったか?
自分が入門書読んだ限りだと
2次元配列=長方形の配列の配列(各配列の長さが揃ってる)
ジャグ配列=各配列の長さが揃ってないデコボコの配列の配列
0348デフォルトの名無しさん
2011/06/27(月) 00:19:23.85開発者の確保が難しく、大規模化したことでソースの見通しと
開発効率が悪いためC#への移行を検討しています。
AIRでは全て非同期なため大規模化するとメンテナンスしきれず、
また下手な書き方をされるとFlashBuilderでは入力補間とかも
機能しなくなり、またFlashやってる開発者はある程度の規模の
チーム開発できる人間が非常に少ないのです。
0349デフォルトの名無しさん
2011/06/27(月) 00:19:43.06> C#だと2次元配列も配列の配列じゃ無かったか?
違うよ
1次元の配列を二次元っぽく見せてると言う方が近い
0350デフォルトの名無しさん
2011/06/27(月) 00:21:41.57どうしてもWebKitでなければダメ、という箇所がなければ
標準のWebBrowser(IE)を使うのがいいと思うけれど。
0351デフォルトの名無しさん
2011/06/27(月) 00:32:31.783年ほど前に始まったプロジェクトなのですが、WebBrowserでは
DOMで高さがとれない場合があるとか問題点が報告され、
またMac対応などもあり急遽AIRでの実装となったのです。
0352デフォルトの名無しさん
2011/06/27(月) 01:00:39.32普通にAPIにDOMあるじゃん
0353デフォルトの名無しさん
2011/06/27(月) 07:44:19.68https://github.com/webkitdotnet/webkitdotnet
0354デフォルトの名無しさん
2011/06/27(月) 07:59:21.31WebKitの魅力ってあんまり
0355デフォルトの名無しさん
2011/06/27(月) 08:05:07.49古いバージョン向けのWebBrowserのコードはいろいろ面倒だったけど
0356デフォルトの名無しさん
2011/06/27(月) 08:13:11.810357デフォルトの名無しさん
2011/06/27(月) 08:31:35.19あれをdinamicで組めとか言うつもりなのか?
0358デフォルトの名無しさん
2011/06/27(月) 08:33:38.83取れない場合があるだからなあ
0359デフォルトの名無しさん
2011/06/27(月) 08:36:39.210360デフォルトの名無しさん
2011/06/27(月) 08:41:50.81実行することができるので、それを使って誤魔化せ
0361デフォルトの名無しさん
2011/06/27(月) 08:44:37.300362デフォルトの名無しさん
2011/06/27(月) 09:31:28.76なにそれ
0363デフォルトの名無しさん
2011/06/27(月) 10:45:30.90あれWPFの意味が全く無い実装で
WindowsFormsHostでWinFormsのWebBrowser使うのと同じだから
必要ならそっち使えってことだろ
Silverlightの方のWebBrowserは描画がフレームワークに統合されてるんだけど
WPFのWebBrowserはウィンドウハンドル持ってて糞
0364デフォルトの名無しさん
2011/06/27(月) 10:53:42.81WindowsFormsHostで使っているんだが、GridSplitterで動かすと上手く描画が更新されない
何か上手く行く方法ありませんかね?
0365デフォルトの名無しさん
2011/06/27(月) 10:54:22.10$array(
array(1,2,3),
array(4,5,6)
);
とC#のジャグ配列は一緒ではないという事ですか?
0366デフォルトの名無しさん
2011/06/27(月) 11:12:08.33UpdateWindowPosとかInvalidateMeasureとか呼んでみたら
>>365
それはC#でいうジャグ配列(配列の配列)
C#でいう多次元配列はPHPには無い
でも不便だから多次元配列は無理に使わなくていいよ
最適化や新機能からハブられまくってる過去の機能
0367デフォルトの名無しさん
2011/06/27(月) 11:24:09.830368デフォルトの名無しさん
2011/06/27(月) 12:21:54.35了解しました
0369デフォルトの名無しさん
2011/06/27(月) 12:23:30.50それらとIEのwebbrowserを組み合わせて3つのエンジンが使えるブラウザを作った場合ってライセンスは何で配布したらよいのでしょうか?
0370デフォルトの名無しさん
2011/06/27(月) 13:29:16.630371デフォルトの名無しさん
2011/06/27(月) 15:04:42.52PrimeクラスはForm2クラスを所有して、publicなstartCalc、privateなCalcメソッドを持っています。
Form2クラスは自身のtextboxに文字を追記するpublicなwritelnメソッドを持っています。
希望の挙動は、PrimeクラスのstartCalcを呼ぶと、
メソッド内部でForm2が生成され、Calcメソッドの中で無限ループしつつ、逐一Form2.writelnに結果を書きだす事です。
こんなプログラムを書きたいのですが、startCalcの中で、form2.ShowDialog();Calc();とするとForm2を閉じるまでCalcが行われませんし、
form2.Show();Calc();とすると、ウィンドウメッセージの処理を忘れた時のような状態でフリーズしました。
そこで、並列にすれば良いのかな?と思って、
System.Threading.Tasks.Parallel.Invoke(form2.Show,Calc);としてみましたが、これもフリーズし、
最終的にSystem.Threading.Tasks.Parallel.Invoke(wrapper,Calc);としてwrapperの中でform2.ShowDialogすると希望通りの挙動になりました。
気になったのでwrapperの中でform2.Show()してみたら、これはフリーズしました。
結果として動いたのは嬉しいんですが、ここまで違いが出た理由が全く分からなくて気持ち悪いです。
誰か説明して頂けないでしょうか?
0372デフォルトの名無しさん
2011/06/27(月) 16:11:12.09何故AL?
0373デフォルトの名無しさん
2011/06/27(月) 18:06:33.44「GUIを更新するのはGUIを生成したスレッドでなければならない」という制約がある
全部それに起因する問題
多少正確な表現ではないけど
0374デフォルトの名無しさん
2011/06/27(月) 20:22:40.72なんとなく
0375デフォルトの名無しさん
2011/06/27(月) 21:27:59.72なるほど、色々読んできて理解しました。
最後の上手く行ったコードもデバッグモードで動かしたら例外吐いてました。
ですが、上記のフリーズするパターンは、
例えばform2.Show();while(true){sleep(5000)}のような、form2のコントロールにアクセスしないようなコードでも再現するので、
また別の理由では無いかと思うのですが、どうなんでしょうか?
0376デフォルトの名無しさん
2011/06/27(月) 21:35:22.56GeckoFxがMPL(LGPL)
Webkit.NETがMIT
WebBrowserはどうでもいい
よって「○○の作者さん、ありがとう」と書いておけばいい
0377デフォルトの名無しさん
2011/06/27(月) 21:36:20.80form2.ShowDialogはShowDialogで表示したダイアログが閉じるまでブロックされるのは仕様だろう。
ダイアログでは色々設定してその結果をプロパティなどを経由して呼び出し元に提供するからね。
で、while(true){sleep(5000)}これがなにやってるかわかるかな?
基本シングルスレッドの条件化でメッセージループしながらイベントとか処理してるはずなんだが、
そのシングルスレッドの処理をとめる行為じゃないかな?
止まってる間はメッセーループを処理できないし、それができなければフォームはフリーズしないかね?
さてさて・・・。
0378デフォルトの名無しさん
2011/06/27(月) 21:37:39.04GUIが更新されてないからフリーズしたように見えてるだけじゃなくて?
0379378
2011/06/27(月) 21:42:14.12まあべたにマルチスレッド化するのが答えだわな
別スレッド起こしてそっちでform2作成
Calc()の走ってるスレッドからGUI更新はform2.Invokeまたはform2.BeginInvoke
0380デフォルトの名無しさん
2011/06/27(月) 22:07:32.65Primeからform2のコントロールにアクセス出来ないのは、コントロールがスレッドセーフでないからとの事のようですが、
それならばPrime(というよりform2.Showの呼び出し元)はform2とは別のスレッドで動いているという事ではないんでしょうか?
Primeとform2が別のスレッドで動いているのならば、Primeが無限ループに陥っていてもform2の描写は適切にされると考えたのですが、
「そもそもshowしただけではform2は別スレッドで処理されない」
「メッセージループはform2を描写するスレッドとは別のスレッドで処理される」
のどちらかなのでしょうか?
0381デフォルトの名無しさん
2011/06/27(月) 22:30:44.72ちげーよ。
>そもそもshowしただけではform2は別スレッドで処理されない
そうだよ。
>Calcメソッドの中で無限ループ
なんでしょ?
form2.Show();
Calc(); // ここから戻ってこない
なんだから同スレッド上のform2のメッセージポンプは動かないよ
ためしにCalc();のループ内でApplication.DoEvents();してみそ
0382デフォルトの名無しさん
2011/06/27(月) 22:35:53.62Calcは計算して結果をコレクションに突っ込むだけにして、フォームはタイマでも使って定期的にその結果を表示するようにするのが定石
0383デフォルトの名無しさん
2011/06/27(月) 22:41:35.210384デフォルトの名無しさん
2011/06/27(月) 22:50:48.51BeginInvokeにしろBackgroundWorkerにしろ
0385デフォルトの名無しさん
2011/06/27(月) 22:51:00.71後のGUIスレッドとの通信とかクラス分け等の実装は様々
0386デフォルトの名無しさん
2011/06/27(月) 22:55:36.46それだと非効率な場合なんかは、確かに>>382のようにするのがまあ定石だと思うが。
0387デフォルトの名無しさん
2011/06/27(月) 23:01:02.470388デフォルトの名無しさん
2011/06/27(月) 23:09:11.87BackgroundWorkerで for (int i = 1; i < end; i++) { bool result = prime.IsPrime(i); BeginInvokeとかReportProgressとか共有コレクションに入れるとかして結果出力(result); }
とするのがいいと思う
0389デフォルトの名無しさん
2011/06/27(月) 23:15:23.03結局ライセンスが違うからMPLにもMITにもできないじゃん
0390デフォルトの名無しさん
2011/06/27(月) 23:23:27.44{
Hoge hoge = new Hoge();
return hoge;
}
みたいな、コードです。
0391デフォルトの名無しさん
2011/06/27(月) 23:26:24.78普通です
0392デフォルトの名無しさん
2011/06/27(月) 23:52:45.30C++で苦労したことを思い出した
0393デフォルトの名無しさん
2011/06/28(火) 07:18:06.10Showしたスレッドがメッセージを処理するので、while(true){sleep(5000)}で止まってる限り一行にメッセージが処理されない
0394デフォルトの名無しさん
2011/06/28(火) 07:32:54.810395デフォルトの名無しさん
2011/06/28(火) 08:18:57.360396デフォルトの名無しさん
2011/06/28(火) 09:52:07.99そういう意味でもPrimeがFormを持つよりFormにPrimeを持たせるべき…
0397デフォルトの名無しさん
2011/06/28(火) 10:06:17.72データがロードされてテーブルが表示される前にHTMLがダウンロードされるようです
0398デフォルトの名無しさん
2011/06/28(火) 10:06:57.050399デフォルトの名無しさん
2011/06/28(火) 10:07:06.040400デフォルトの名無しさん
2011/06/28(火) 10:08:30.45って言ってるのと変わらん。
0401デフォルトの名無しさん
2011/06/28(火) 10:15:50.370402デフォルトの名無しさん
2011/06/28(火) 10:18:09.370403デフォルトの名無しさん
2011/06/28(火) 10:18:37.59内部でproxyぽいことをするかnavigatingイベントあたりでナビゲートに入る段階でhtmlを見るくらい?
0404デフォルトの名無しさん
2011/06/28(火) 10:24:00.65スクレイピングならSGMLReaderとか使って生のXMLに触ればいいじゃないか
なぜWebBrowserを介するんだ?
お前がやりたいのは本当にスクレイピングなのだろうか?
0405デフォルトの名無しさん
2011/06/28(火) 10:25:13.55上記サイトのVBAで表を抜く方法をC#で行うか、別の効率の良い方法でスクレイピングしたいのです
0406デフォルトの名無しさん
2011/06/28(火) 10:26:27.84SgmlReaderも試しましたが、テーブルが表示される前にHTMLがダウンロードされるようです
0407デフォルトの名無しさん
2011/06/28(火) 10:29:04.07だからダウンロードが発生するとか意味不明な発言が飛び交ってるのね
InternetExplorer.Applicationからやろうって発想がまず間違ってる
0408デフォルトの名無しさん
2011/06/28(火) 10:31:06.290409デフォルトの名無しさん
2011/06/28(火) 10:36:47.430410デフォルトの名無しさん
2011/06/28(火) 10:38:43.240411デフォルトの名無しさん
2011/06/28(火) 10:38:56.05エスパーの出番
0412デフォルトの名無しさん
2011/06/28(火) 10:39:47.16OpenRead
WebRequest
webbrowser
SgmlReader
あたりは試してVBAのIE操作はOKでした、C#でのIE操作記述方法は手こずってますが、ほかの効率の良い方法を試したいのです
0413デフォルトの名無しさん
2011/06/28(火) 10:40:15.650414デフォルトの名無しさん
2011/06/28(火) 10:41:02.730415デフォルトの名無しさん
2011/06/28(火) 10:42:54.85貼れないなら説明する力を身につけてから出直してこい
0416デフォルトの名無しさん
2011/06/28(火) 10:43:26.520417デフォルトの名無しさん
2011/06/28(火) 10:48:25.79http://www.cmegroup.com/trading/equity-index/international-index/nikkei-225-dollar_quotes_settlements_futures.html
C#での更なる効率的な方法が知りたいのです
0418デフォルトの名無しさん
2011/06/28(火) 10:48:32.790419371
2011/06/28(火) 10:50:56.63Expressのデバッガにもスレッドビューが有ったら良かったのに……
>>382,384,388
Timer、BeginInvoke、BackgroundWorkerの存在を初めて知りました。
次はこれらを使ってみようと思います。ありがとうございました。
>>387,396
PrimeのためにFormが有って、PrimeがFormを利用するので、
Prime has Formで問題無いと思ってたんですが、オブジェクト指向って難しいですね。
0420デフォルトの名無しさん
2011/06/28(火) 10:51:52.20OKOK理解した
javascriptの完了が待てればいいってことな
0421デフォルトの名無しさん
2011/06/28(火) 10:53:05.360422デフォルトの名無しさん
2011/06/28(火) 10:54:07.56どうもありがとうございました
0423デフォルトの名無しさん
2011/06/28(火) 10:55:11.510424デフォルトの名無しさん
2011/06/28(火) 10:57:54.760425デフォルトの名無しさん
2011/06/28(火) 10:58:00.96documentcompletedイベントだとだめだが
0426デフォルトの名無しさん
2011/06/28(火) 10:59:48.91DocumentCompletedだとhtmlとそのヘッダー部分に書かれてるjsなどすべてでで発生するので
どれが完了したか調べないとだめ
ページを構成するファイルすべてが終わった際に発生するnavigatedイベントで考えればOK
0427デフォルトの名無しさん
2011/06/28(火) 11:02:04.700428デフォルトの名無しさん
2011/06/28(火) 11:07:41.09マネして呼ぶことだね。そうすればWebBrowserを介さないですむ。
0429デフォルトの名無しさん
2011/06/28(火) 11:13:27.960430デフォルトの名無しさん
2011/06/28(火) 11:16:56.60html,jsとあとなんだろw
0431デフォルトの名無しさん
2011/06/28(火) 11:21:22.52ニホンゴデイイデスヨ
0432デフォルトの名無しさん
2011/06/28(火) 11:21:34.45HtmlDocumentのAttachEventでjavascriptのイベントを差し込めるが
IEにはDOM変異イベントが存在しないのであった
IE死ね
0433デフォルトの名無しさん
2011/06/28(火) 11:21:59.40これが最速だろう。
0434デフォルトの名無しさん
2011/06/28(火) 11:23:26.59それってjsに書いてね?
0435デフォルトの名無しさん
2011/06/28(火) 11:26:31.33jsを読むのとキャプチャとどっちが楽かってことですな。
0436デフォルトの名無しさん
2011/06/28(火) 11:28:35.56○ 爆発しろ
0437デフォルトの名無しさん
2011/06/28(火) 11:28:38.51まあそういうことだねw
でもjsはあれこれ悩まないでも入手可能だしベタで投げる要求書いてることがほとんどだしなあ
0438デフォルトの名無しさん
2011/06/28(火) 11:33:25.380439デフォルトの名無しさん
2011/06/28(火) 11:43:06.89ただしvirtualかabstructに限る
0440デフォルトの名無しさん
2011/06/28(火) 11:43:37.61どういう使われ方を想定してるのさ?
0441デフォルトの名無しさん
2011/06/28(火) 11:49:41.93オーバーライドちゃうでw
0442デフォルトの名無しさん
2011/06/28(火) 12:46:29.330443デフォルトの名無しさん
2011/06/28(火) 14:46:05.96先日からVisual C# 2010 Expres でC#勉強しはじめたものです。
ウェブサイトでサンプルとか打ち込んで実行してみるのですが
コンソールアプリ作って実行した段階でコマンドプロンプトがピロっと表示されて
ウィンドウがすぐに閉じてしまい実行結果が確認できません。
ポーズかけておくにはどうしたらよろしいのでしょうか?
0444デフォルトの名無しさん
2011/06/28(火) 14:48:23.59で適当に入力待つとか
0445デフォルトの名無しさん
2011/06/28(火) 14:53:24.34即消えなくなりました。
0446デフォルトの名無しさん
2011/06/28(火) 14:55:46.20デバッグが必要なら、終了する前に止めるだろうしね
0447443
2011/06/28(火) 15:01:17.47デバッグ開始(F5)だとポーズかからず
この違いはなにか意味あるんですかね?
0448デフォルトの名無しさん
2011/06/28(火) 15:04:34.91てか、なぜコンソールアプリから入るw
Windowsフォームからでいいんじゃね
0449デフォルトの名無しさん
2011/06/28(火) 15:06:46.53今でもご丁寧にコンソールアプリから解説してるサイトもあるからなあ・・・
0450デフォルトの名無しさん
2011/06/28(火) 15:07:33.93ということなのかな?
>>448 いやーみてるサンプルサイトがコンソールアプリから書いてあるからかなw
作法もなにも知らないし順次こなしていこうかと。
windowsフォームから入るのも少しかんがえます。
ありがとうございます。
0451デフォルトの名無しさん
2011/06/28(火) 15:43:17.31別にformsからでもいいが、デザイナべったりでイベントの書き方も分からないというのは避けたい
0452デフォルトの名無しさん
2011/06/28(火) 15:58:35.59ただ、C#の良さはUIの作り易さでもあるから、Windowsフォームからで良いかなと
コントロール貼りつけてダブルクリックするだけなのはMFCには出来ない芸当だし
イベントについては当然学習は必要だけども、全くの初心者なら後回しでも良いと思う
いきなりイベントの書き方を理解させようとすると混乱の元だし、考えなくてもとりあえずは動くからなー
0453デフォルトの名無しさん
2011/06/28(火) 17:08:07.10コンソールから入るのがいいと思ってます
0454デフォルトの名無しさん
2011/06/28(火) 17:13:24.07C#やるんであればフォームは、まぁ、避けられない道ではあるけども、VC#の挙動を把握するために下地は必要だと思う。
そのためには、C#だけじゃなく色々雑食なほうが見通しはいいと思う。
車輪の再発明は基本的に不要だけども、車輪のことを知るには車輪のコピーを作るのが一番早い。と、俺は思ってるなぁ。
0455デフォルトの名無しさん
2011/06/28(火) 17:36:17.17文字が出るだけじゃパッとしない気もするし
0456デフォルトの名無しさん
2011/06/28(火) 17:38:09.210457デフォルトの名無しさん
2011/06/28(火) 18:10:37.38Windowsから入った人はフォームからがわかりやすいと思う
0458デフォルトの名無しさん
2011/06/28(火) 19:31:27.75別にそれでも構わんと思うけど、本もWebも入門と言ったらコンソールばかりだからな
フォームで入門したい初心者はそうとう頑張ってググるか、コンソールアプリで書かれた入門用のコードをフォームアプリに移植しながら学習するしかない
0459デフォルトの名無しさん
2011/06/28(火) 19:33:06.49UIのことは思考から極力排除したいから。
0460デフォルトの名無しさん
2011/06/28(火) 19:37:08.84入門書や入門サイト書いてる人も同じ考えなんだろうな
0461デフォルトの名無しさん
2011/06/28(火) 19:45:30.280462デフォルトの名無しさん
2011/06/28(火) 19:48:51.84玄人の経験から初心者には何を求めるかとその道筋をどう設定するかというのが何か無い?
0463デフォルトの名無しさん
2011/06/28(火) 20:19:01.170464デフォルトの名無しさん
2011/06/28(火) 20:25:47.34複数フォーム、MDIとか使った食べ応えあるのがいい
0465デフォルトの名無しさん
2011/06/28(火) 20:28:01.320466デフォルトの名無しさん
2011/06/28(火) 20:53:00.58(まあ、Excelとか未だにMDIだが)
0467デフォルトの名無しさん
2011/06/28(火) 21:00:01.83エクセルもあるときから別ウインドウのように開いてなかったっけ?
0468デフォルトの名無しさん
2011/06/28(火) 21:02:41.58GUIばっかり。
こういう適当なこと言う人は信用ならんね。
ひょっとしたら他言語使用者向けのC#の入門書にはそういう趣向のものがあるかもしれないが、
少なくともプログラミング未経験者向けの本(C#でプログラミングに入門する本)にそんなのはない。
ある訳ないよ今時そんなの売れないもん。
0469デフォルトの名無しさん
2011/06/28(火) 21:08:22.15その後、文法説明に入るとしばらくコンソールって感じの奴が多くない?
0470デフォルトの名無しさん
2011/06/28(火) 21:09:53.440471デフォルトの名無しさん
2011/06/28(火) 21:11:04.880472デフォルトの名無しさん
2011/06/28(火) 21:12:04.97まあ実行結果出すにしてもGUIの場合だとtextboxでも貼り付けておかないと
だめだろうしってことじゃないの?
あとGUIの場合はmainから始まらないでLoadとかShownにコード書くしね
0473デフォルトの名無しさん
2011/06/28(火) 21:12:52.340474デフォルトの名無しさん
2011/06/28(火) 21:13:17.27「C#」について解説している入門書はそうでもないと思う
0475デフォルトの名無しさん
2011/06/28(火) 21:14:59.810476デフォルトの名無しさん
2011/06/28(火) 21:15:26.560477デフォルトの名無しさん
2011/06/28(火) 21:16:32.050478デフォルトの名無しさん
2011/06/28(火) 21:16:43.020479デフォルトの名無しさん
2011/06/28(火) 21:18:11.930480デフォルトの名無しさん
2011/06/28(火) 21:19:14.93だなぁ。
0482デフォルトの名無しさん
2011/06/28(火) 21:20:31.03Excelの何が嫌って
「別ディレクトリに有る、同じ名前のファイル」 を同一プロセス上で開けない所だ('A`)
>>479
最初は本読まずに、@IT・CodeZine等の情報サイトや個人ブログからだったなあ
C#始めたきっかけはSilverlightからだった
0483デフォルトの名無しさん
2011/06/28(火) 21:30:23.79その割にしぶとい。
SDIの優位性を説く時に引き合いに出されてたIEも結局MDIになっちゃったし。
しかし、.NETのMDIはバグ多すぎるな
0484デフォルトの名無しさん
2011/06/28(火) 22:00:36.88タブとMDIは、また別物だと思う (OperaはMDIだが)
複数のウィンドウでプロセスを共有する、という意味では
まあMDI的と言えるかもだが
0485デフォルトの名無しさん
2011/06/28(火) 22:22:35.600486デフォルトの名無しさん
2011/06/28(火) 22:25:42.010487デフォルトの名無しさん
2011/06/28(火) 22:29:25.54VS2010はドキュメントを子ウィンドウに分離できるようになったけど
フローティングだから昔ながらのMDIとは全く動作が違うし
0488デフォルトの名無しさん
2011/06/28(火) 22:31:47.01>タブ方式のインターフェースのことはTabbed Document Interface (TDI) と言う
らしいよ
0489デフォルトの名無しさん
2011/06/28(火) 22:35:03.14GIMPみたいな奴か
0490デフォルトの名無しさん
2011/06/28(火) 22:37:05.19MDIかどうかとはあまり関係がありません。
っていうか、あれがMDIじゃなくて何がMDIよ。
プログラマにもこういう人いるのな
0491デフォルトの名無しさん
2011/06/28(火) 22:40:06.28Vista以降で使えるAPIがあって、音量調節可能
Core Audio API
http://www.codeproject.com/KB/vista/CoreAudio.aspx
0492デフォルトの名無しさん
2011/06/28(火) 22:41:20.78MDIはメインメニューにウィンドウ選択するアイテムをマージできるけど、
単にそのメニューの同じ機能をタブに持たせただけじゃん。
0493デフォルトの名無しさん
2011/06/28(火) 22:43:23.89ありがとうございます
0494490
2011/06/28(火) 22:45:58.35そんなの試したことないから気づかなかったすまん
0495デフォルトの名無しさん
2011/06/28(火) 22:52:50.210496デフォルトの名無しさん
2011/06/28(火) 23:02:31.950497デフォルトの名無しさん
2011/06/28(火) 23:13:49.04子供騙しにもなりゃしない。つか、今時子供の方が眼が肥えてる。
無関心無感動じゃなく、低レベル過ぎて冷めてるんだよな〜。
0498デフォルトの名無しさん
2011/06/28(火) 23:16:49.370499デフォルトの名無しさん
2011/06/28(火) 23:19:30.830500デフォルトの名無しさん
2011/06/28(火) 23:23:10.250501デフォルトの名無しさん
2011/06/28(火) 23:38:18.64でも、イベントハンドラに一行も書かない事が美徳であるかの様なMVVM原理主義もどうかと思う。
0502デフォルトの名無しさん
2011/06/28(火) 23:59:02.68が一番タチが悪い
結局そのクラスからフォーム上のコントロールに直接アクセスしたりしてて何の意味もない
0503デフォルトの名無しさん
2011/06/29(水) 00:00:04.510504デフォルトの名無しさん
2011/06/29(水) 00:11:23.810505デフォルトの名無しさん
2011/06/29(水) 00:18:08.39初心者には全く必要ないけどw
0506デフォルトの名無しさん
2011/06/29(水) 00:57:32.93利用される側が利用する側をやたらと呼び出す構造にしてしまいがち
本当に必要ならイベントとかインターフェイスとか使えばいいけど、
それが本当に必要な場面ってそれほど多くなくて、複雑で取り回ししづらくなるから可能なら避ける
0507デフォルトの名無しさん
2011/06/29(水) 00:59:31.390508デフォルトの名無しさん
2011/06/29(水) 01:06:20.190509デフォルトの名無しさん
2011/06/29(水) 06:06:21.310510デフォルトの名無しさん
2011/06/29(水) 07:01:42.62それとも職人がつくるようなAA?
前者ならグレースケール化して一定範囲の明るさの平均値を漢字等に置き換える
後者なら輪郭抽出とかかな? 職人に訊きなw
0511デフォルトの名無しさん
2011/06/29(水) 08:48:14.44どのようなAPIで可能でしょうか?ぐぐるためのヒントなど
いただけたらと。
0512デフォルトの名無しさん
2011/06/29(水) 09:02:14.68>>491
0513デフォルトの名無しさん
2011/06/29(水) 09:11:31.51http://wisdom.sakura.ne.jp/system/winapi/media/mm7.html
0514デフォルトの名無しさん
2011/06/29(水) 10:49:00.97一つ勉強すると他の言語を触らなくなるので書き方とかわからなくなります
PHPはもう何年もやってるのでブランクあってもすぐかけるのですが
他の言語だとそうもいきません
ここのスレの先輩方はどうやって克服して言ってるのでしょうか?
0515デフォルトの名無しさん
2011/06/29(水) 10:55:00.530516デフォルトの名無しさん
2011/06/29(水) 10:56:18.040517デフォルトの名無しさん
2011/06/29(水) 10:56:36.69しいて言えばメイン言語との差分を覚えていくって感じにはしてる
WEB系なら大きな造りは基本変わらないから
0518デフォルトの名無しさん
2011/06/29(水) 11:12:43.02ServiceController sc = new ServiceController(サービス名,マシン名)
sc.Pause();
で別PCのサービスの制御ができるようで、実際にやってみたらできました。
ただ、認証をしていないのですが、これはなぜでしょうか?
一度リモートデスクトップで入っているので、その設定を勝手に見ているからなんでしょうか?
0519デフォルトの名無しさん
2011/06/29(水) 11:12:45.58http://eternalwindows.jp/winmm/wave/wave04.html
0520デフォルトの名無しさん
2011/06/29(水) 11:23:35.200521デフォルトの名無しさん
2011/06/29(水) 19:59:43.57コードはコンソールプログラムです
0522デフォルトの名無しさん
2011/06/29(水) 20:02:11.88↑を使えば、誰かしら見るだろ。
採点は基準がないから、むずかしいけど、感想ぐらいなら聞けるんじゃない?
0523デフォルトの名無しさん
2011/06/29(水) 20:06:21.65最近コンソールはC#で作る必要ないかなと思うようになりました
コンソールならRubyとかPythonのほうがいいような気がしました
できるならCがいいのかもしれません
C#は手っ取り早くGUIプログラムを綺麗なコードで作れるのが一番のメリットだと思います
0524デフォルトの名無しさん
2011/06/29(水) 20:07:51.820525デフォルトの名無しさん
2011/06/29(水) 20:11:09.32だったら同言語で書くよ
0526デフォルトの名無しさん
2011/06/29(水) 20:21:29.730527デフォルトの名無しさん
2011/06/29(水) 20:40:34.25C#っつーか、PowerShell辺りで十分な事も多いが
0528デフォルトの名無しさん
2011/06/29(水) 21:58:46.120529デフォルトの名無しさん
2011/06/29(水) 22:09:15.560530デフォルトの名無しさん
2011/06/29(水) 22:13:27.31こないだ初めて仕事で簡単なのを書いたが
俺には苦痛以外の何物でもなかったぜ……
0531デフォルトの名無しさん
2011/06/29(水) 23:33:05.84C++はCほど厳密にメモリ管理できずC#ほど手軽でもない中途半端すぎるクソ言語だとGObjectの作者が言ってた
0532デフォルトの名無しさん
2011/06/29(水) 23:35:36.41意味不明だな
0533デフォルトの名無しさん
2011/06/29(水) 23:40:46.830534デフォルトの名無しさん
2011/06/29(水) 23:42:26.02未使用領域を確保しないで使うとか。
0535デフォルトの名無しさん
2011/06/29(水) 23:45:48.06CとC#とPythonの混在が最強だろう
0536デフォルトの名無しさん
2011/06/30(木) 00:34:36.670537デフォルトの名無しさん
2011/06/30(木) 00:47:06.74どういうことか聞いてみたいな。
0538デフォルトの名無しさん
2011/06/30(木) 01:20:37.280539デフォルトの名無しさん
2011/06/30(木) 01:56:23.29実際小さい規模の開発なら何でもかんでもスタックに置いて参照渡ししまくるようなC++らしいやり方はとても便利で
メモリをそんなに意識せずに結構テキトーに扱えるよ
複雑になってくるとあまり役に立たなくなるけど
0540デフォルトの名無しさん
2011/06/30(木) 02:17:57.92この余白の幅(ピクセル)を求めるにはどうすればいいのでしょうか?
ttp://thuploader.orz.hm/1mup/dat/1mup_02647.png
0541デフォルトの名無しさん
2011/06/30(木) 03:45:14.75だからPaddingとか関係ない
適当なサイズのビットマップを作成して x=0 の位置に文字を描画
↓
画像左端からピクセルの色をチェック
↓
背景色以外のピクセルが来たらその x 座標が l の左側のマージン
もちろん糞遅いから GetPixel なんか使うなよ
0542デフォルトの名無しさん
2011/06/30(木) 03:50:25.69各行について調べて、見つかった x 座標の最小値とるんだぞ
0543デフォルトの名無しさん
2011/06/30(木) 07:50:41.06フォームアプリケーションで例えばテキストボックスに入力された文字をテキストファイルに書きだす
この処理だけでもForm1クラスとは別のクラスに書いて呼び出したほうがいいんでしょうか?
別クラスにすると、テキストボックスのインスタンスをどうにかして取得するか、
引数としてテキストボックスのテキストを渡すということをしなければいけないのでどっちがいいのかわからないです・・・
0544デフォルトの名無しさん
2011/06/30(木) 07:54:33.47そのくらいの規模なら必要ないでしょ
ある程度規模が大きくなるとこの辺は分けたいなあとかいうのが
でてくるだろうからそのときでいいんじゃないの?
0545デフォルトの名無しさん
2011/06/30(木) 08:07:27.37なんだこれ
だせぇなって思うまではクラスは使わなくていいよ
0546デフォルトの名無しさん
2011/06/30(木) 09:24:38.31初心者はとりあえずクラスやインスタンスのような言葉は考えるな
とりあえず直接文字列をテキストファイルに書き出せばおk
0547543
2011/06/30(木) 09:31:34.61複雑なコードになりそうな時だけ、別クラスに書きこむことにします
0548デフォルトの名無しさん
2011/06/30(木) 09:39:44.21当然、VBもComplex使えます
http://msdn.microsoft.com/ja-jp/library/ee259523.aspx
0549デフォルトの名無しさん
2011/06/30(木) 09:55:21.61自分でComplexクラスを作ったばっかりなのに・・・
そもそも今まで虚数計算出来ないこと自体が謎だったんだ
0550デフォルトの名無しさん
2011/06/30(木) 09:56:41.97数学で使うの?
0551デフォルトの名無しさん
2011/06/30(木) 10:50:47.03自分のとMSのを比べれば
色々勉強になるから全くの無駄にはならないじゃん
0552デフォルトの名無しさん
2011/06/30(木) 11:11:39.60実数部と虚数部を用意するだけなんだけどなw
0553デフォルトの名無しさん
2011/06/30(木) 11:17:01.80file.csがfolderっていうフォルダにに入ってた場合(folder\file.cs)どうやってmain.csから読み込むのでしょうか?
0554デフォルトの名無しさん
2011/06/30(木) 11:32:08.85って誰か言ってたからそうしてたけど、
今日初めて、2.0をインストールしろと要求された。
ということは、1.0から4.0まで全部入れてないと
動かないアプリが出てくると言うことですか?
0555デフォルトの名無しさん
2011/06/30(木) 11:49:38.08機能としては上位互換だけど、
XPに入ってるのは2.0
0556デフォルトの名無しさん
2011/06/30(木) 11:54:21.30C# に物理パス関係ないんだけど。
C 言語とかと勘違いしてない?
>>554
バージョン指定を明示してるんじゃないかな。
0557デフォルトの名無しさん
2011/06/30(木) 12:11:33.61元々.NETは出来る限り後方互換は保つようにするけど
原則としてそのアセンブリに合ったバージョンのものを使うべしって指向
で、その方針を強化するために.NET 4ではapp.configに明記しない限り
.NET 2.0用のアセンブリは.NET 4でロードしないようになった
0558デフォルトの名無しさん
2011/06/30(木) 12:18:23.500559デフォルトの名無しさん
2011/06/30(木) 12:25:13.870560デフォルトの名無しさん
2011/06/30(木) 12:41:03.350561デフォルトの名無しさん
2011/06/30(木) 13:00:17.71Java も C# も両方残るでしょ、確実に。
0562デフォルトの名無しさん
2011/06/30(木) 13:03:23.940563デフォルトの名無しさん
2011/06/30(木) 13:07:27.480564デフォルトの名無しさん
2011/06/30(木) 13:09:32.170565デフォルトの名無しさん
2011/06/30(木) 13:32:33.540566デフォルトの名無しさん
2011/06/30(木) 13:35:35.250567デフォルトの名無しさん
2011/06/30(木) 13:53:42.83致命傷負いながら生き残っているよな
寧ろPL/1の方が青息吐息だよ
0568デフォルトの名無しさん
2011/06/30(木) 13:53:45.01しかし、人気爆発中
0569デフォルトの名無しさん
2011/06/30(木) 13:59:17.720570デフォルトの名無しさん
2011/06/30(木) 14:08:35.89そうなんですよ
そのJavaにC#が負けると僕の勉強が水の泡に鳴るので
0571デフォルトの名無しさん
2011/06/30(木) 14:11:00.620572デフォルトの名無しさん
2011/06/30(木) 14:11:43.18どのプラットフォームでどういう物作るかで道具を使い分けるくらいのつもりでいろよ
0573デフォルトの名無しさん
2011/06/30(木) 14:16:07.46安心しろ
何勉強しようが10年経てば水の泡だ
たとえ組み込みの世界でもな
0574デフォルトの名無しさん
2011/06/30(木) 14:20:21.85COBOLとPL/1はほぼ同時期に開発された
0575デフォルトの名無しさん
2011/06/30(木) 14:26:12.01今覚えてないのはLISPくらいか
後はほとんどマスターしたな。
0576デフォルトの名無しさん
2011/06/30(木) 14:30:53.55http://japan.cnet.com/news/business/35004664
0577デフォルトの名無しさん
2011/06/30(木) 14:32:57.18お探しのページは存在しません
2秒後にトップページに移動します。
0578デフォルトの名無しさん
2011/06/30(木) 14:41:18.110579デフォルトの名無しさん
2011/06/30(木) 18:28:02.60Lua人気上がってるのかー
ちょっと意外だな。や、良い言語だけれdも
>>575
Dとかgoとかもかよw
0580デフォルトの名無しさん
2011/06/30(木) 18:36:02.410581デフォルトの名無しさん
2011/06/30(木) 19:48:15.980582デフォルトの名無しさん
2011/06/30(木) 19:53:19.43だってHSPで作ればライブラリなんてインストールしてない環境でも動くし
C#でゲーム作るとたいていはXNAをインストールしたり場合によってはC#4.0も入れないと動かないし
0583デフォルトの名無しさん
2011/06/30(木) 20:11:41.180584デフォルトの名無しさん
2011/06/30(木) 20:12:27.790585デフォルトの名無しさん
2011/06/30(木) 20:16:27.92ランタイムなしで動いても1回起動して終わりがほとんどでしょ
0586デフォルトの名無しさん
2011/06/30(木) 20:18:25.950587デフォルトの名無しさん
2011/06/30(木) 20:24:24.18イベント使えば良いんじゃね?
0588デフォルトの名無しさん
2011/06/30(木) 20:24:35.91クラスにOnChangedイベントなどを作成して
プロパティのsetterで呼べばいいんじゃないか?
0589デフォルトの名無しさん
2011/06/30(木) 20:32:23.01いろいろ、足りないものが多すぎる。
0590デフォルトの名無しさん
2011/06/30(木) 20:33:46.360591デフォルトの名無しさん
2011/06/30(木) 20:43:04.33Qtにはグラフィカルに編集できるエディタが無料で付いてくるぞ。
なんとかしろMS
0592デフォルトの名無しさん
2011/06/30(木) 20:49:09.44イベント使えばいいけどメモリリークには注意しろよ
登録解除しない限り通知先が絶対にGCされなくなる
イベントに限らずインターフェイスでもデリゲートでも同じ
0593デフォルトの名無しさん
2011/06/30(木) 20:50:46.930594デフォルトの名無しさん
2011/06/30(木) 20:51:02.45デリゲートの登録・解除はわかるけど、インターフェースってどういうケース?
0595デフォルトの名無しさん
2011/06/30(木) 20:53:52.82C#でそんなのやる奴はいないけどさ
0596デフォルトの名無しさん
2011/06/30(木) 21:02:35.77うるさすぎ
アプリ再起動すればいいだけ
0597デフォルトの名無しさん
2011/06/30(木) 21:18:12.050598デフォルトの名無しさん
2011/06/30(木) 21:32:34.84C#はクラスとかメソッドなどの難解な概念を見つけないとだめだから
0599デフォルトの名無しさん
2011/06/30(木) 21:33:31.850600デフォルトの名無しさん
2011/06/30(木) 21:34:32.280601デフォルトの名無しさん
2011/06/30(木) 21:53:06.830602デフォルトの名無しさん
2011/06/30(木) 21:54:33.990603デフォルトの名無しさん
2011/06/30(木) 21:55:39.590604デフォルトの名無しさん
2011/06/30(木) 22:23:16.660605デフォルトの名無しさん
2011/06/30(木) 22:26:01.20C/C++じゃなきゃ、お金をとれないよな
0606デフォルトの名無しさん
2011/06/30(木) 22:27:11.040607デフォルトの名無しさん
2011/06/30(木) 22:31:39.410608デフォルトの名無しさん
2011/06/30(木) 22:34:25.45メトロ…
Metro…!(ビクンビクン
0609デフォルトの名無しさん
2011/06/30(木) 22:36:09.100610デフォルトの名無しさん
2011/06/30(木) 22:58:40.970611デフォルトの名無しさん
2011/06/30(木) 23:00:58.95中々しぶといよなあ >VBA
0612デフォルトの名無しさん
2011/06/30(木) 23:52:42.470613デフォルトの名無しさん
2011/07/01(金) 00:03:20.48やっぱりJavaも吸収したいのでJavaもやることにします
C#でアンドロイドアプリがつくれるようになるのが理想ですが
0614デフォルトの名無しさん
2011/07/01(金) 00:23:08.00Unity は Android 対応してないんだっけ?
0615デフォルトの名無しさん
2011/07/01(金) 00:23:15.28金出せるならC#でAndroidアプリ作れるよ
0616デフォルトの名無しさん
2011/07/01(金) 00:52:13.71メトロイド
メトロイ
メトロ
メトロノ
0617デフォルトの名無しさん
2011/07/01(金) 00:57:49.830618540
2011/07/01(金) 00:59:38.35回答ありがとうございます。
いろいろ探してたらそれっぽいサイトが見つかったのでこのやり方でやってみて
できなかったらローラー作戦で行こうと思います。
VB.netで文字を正確な位置に描く。
ttp://penguinlab.jp/blog/post/117
0619422
2011/07/01(金) 07:36:18.85>>432
>>433
>>435
何度もすみません、ここらへんググってもよく分かりません
オススメの書籍を教えてください
0620デフォルトの名無しさん
2011/07/01(金) 09:05:20.380621デフォルトの名無しさん
2011/07/01(金) 09:09:22.71まあC#とは直接関係ないけどヒントくらいはいいんでね?
パケットキャプチャとか言ってるのはこういうツールでhttp通信を覗く
http://www.atmarkit.co.jp/fwin2k/win2ktips/1045wshark/wshark.html
※これに関連するのはhttpヘッダーなど
jsを読むっていうのはあなたがデータを入手したいホームページのソース
を開いてhtmlのヘッダなどに書かれてるjavascriptのアドレスを調べて
それを開くとjavascriptのソースが入手可能なのでそれを解析する
※これに関連するのはhtmlとjavascriptとhtmlヘッダーなど
0622デフォルトの名無しさん
2011/07/01(金) 09:48:25.04概要の把握には助かりました
あと、実装部分で参考になる書籍、リンクがあったら助かります
ちなみにプログラムそのものは目的じゃないです
0623デフォルトの名無しさん
2011/07/01(金) 09:52:52.07を取得するコードを書いて表を作るとかすればいいんじゃないの?
まずはxmlを入手するコードを書くしかないね
0624デフォルトの名無しさん
2011/07/01(金) 10:01:44.42わからないって言うだけだから無駄なんだよね
0625デフォルトの名無しさん
2011/07/01(金) 10:02:11.47今回だけだぞ
http://dobon.net/vb/dotnet/internet/usecookie.html
のコードのMainを
//指定したURLのHTMLを受信し、表示する
GetHtml("http://www.cmegroup.com/trading/equity-index/international-index/nikkei-225-dollar_quotes_settlements_futures.html");
//もう一度受信する
string result = GetHtml("http://www.cmegroup.com/CmeWS/mvc/xsltTransformer.do?xlstDoc=/XSLT/da/DailySettlement.xsl&url=/da/DailySettlement/V1/DSReport/ProductCode/NK/FOI/FUT/EXCHANGE/XCME/Underlying/NK?tradeDate=06/30/2011¤tTime=1309480698484");
System.IO.StreamWriter sw = new System.IO.StreamWriter(
@"result.html",
true,
System.Text.Encoding.GetEncoding("shift_jis"));
sw.Write(result);
//閉じる
sw.Close();
と書き換えれば取れるよ
0626デフォルトの名無しさん
2011/07/01(金) 10:07:56.450627デフォルトの名無しさん
2011/07/01(金) 10:36:47.76調子に乗るな
0628デフォルトの名無しさん
2011/07/01(金) 10:43:16.280629デフォルトの名無しさん
2011/07/01(金) 10:43:40.60本職でなくちょっと早めに必要だったからじっくり調べる時間も無かったってところだろう
まぁ>>627の言うこともわかる。
社内でそんなの言われたらちょっとキレるわ
0630デフォルトの名無しさん
2011/07/01(金) 10:56:51.53俺はそんなお前にキレるわ
0631デフォルトの名無しさん
2011/07/01(金) 11:01:16.04いやいや、表に出さないレベルにちょびっとだけ内部ギレするかんじ
言いたいこともわかるけどソコまで言わないでも てかんじ
0632デフォルトの名無しさん
2011/07/01(金) 11:03:33.860633デフォルトの名無しさん
2011/07/01(金) 11:23:08.860634デフォルトの名無しさん
2011/07/01(金) 17:24:44.060635デフォルトの名無しさん
2011/07/01(金) 19:11:27.650636デフォルトの名無しさん
2011/07/01(金) 19:14:16.550637デフォルトの名無しさん
2011/07/01(金) 19:20:36.61定期的に荒らそうとすんなww
0638デフォルトの名無しさん
2011/07/01(金) 19:45:10.29そこがすごい気になる
0639デフォルトの名無しさん
2011/07/01(金) 19:52:45.33もっと一定のリズムで荒れないでしょうか?
0640デフォルトの名無しさん
2011/07/01(金) 20:31:30.12本気で鬱陶しいな。
0641デフォルトの名無しさん
2011/07/01(金) 20:34:26.360642デフォルトの名無しさん
2011/07/01(金) 20:50:00.830643デフォルトの名無しさん
2011/07/01(金) 21:10:45.01ってのが笑いのツボでよろしかったでしょうか?
0644デフォルトの名無しさん
2011/07/01(金) 21:12:20.360645デフォルトの名無しさん
2011/07/01(金) 22:29:37.73http://kamome.2ch.net/test/read.cgi/denki/1306297455/677
0646デフォルトの名無しさん
2011/07/01(金) 22:30:21.66×粘着して
○感謝クレクレ君に粘着されて
0647デフォルトの名無しさん
2011/07/01(金) 23:37:38.09しっかり出てきてるじゃんw
0648デフォルトの名無しさん
2011/07/01(金) 23:39:15.45byte ものすごく小さい数字を使うとき
char 一文字しか使わないときに
short 比較的小さい範囲の数を使うときに
int
long
float 少数を表示するときに使う
double
使い分けが分かりません
longやdoubleが必要な時ってありますか?
それとも最初からbyte,short,intを使わず、longを使い、
floatを使わずdoubleだけ使えばいいような気がするのですが
パフォーマンスに影響あるのでしょうか?
0649デフォルトの名無しさん
2011/07/01(金) 23:43:04.58char 文字列
short ケーキですか。
int 整数はほとんどこれ
long おいしいの?
float データサイズが気になるなら。
double 基本こっち。
って感じで使ってるから、4つかな?アクティブな型って。
0650デフォルトの名無しさん
2011/07/01(金) 23:44:24.50bool 超使う。特に関数の戻り値でifの分岐したりするときはかなり便利。
0651デフォルトの名無しさん
2011/07/01(金) 23:47:54.760652デフォルトの名無しさん
2011/07/01(金) 23:50:04.91byteも割と別の立場
数値型としては大体はint,doubleで足りる
longは稀にだがintで桁数が不安なときに
floatはSystem.Drawingで仕方なく
shortはまあ時々Win32APIとかが要求してくるよね
unsigned系はほぼ使わない
0653デフォルトの名無しさん
2011/07/01(金) 23:51:03.14intでもlongでも要が足りる場合はint
これが常識。
でも前者は理解できるが後者はよく考えるとちょっと奇妙な気がしないでもないな。
ただの習慣の問題だとは思うが
0654デフォルトの名無しさん
2011/07/01(金) 23:52:57.84>longやdoubleが必要な時ってありますか?
それはひょっとしてギャグで(AA略
…まー、C#で新規実装するなら
bool, int, double だけで十分なケースはかなり多いと思うけれども。
(charは、数値文字参照コードを扱う必要が有るなら使う)
「過去のソフトウェア資産で出力されたファイルを、C#で読み込みたい」 とか云う場合には
ファイルフォーマットによっては、より小さい型を細かく使うのがベターな場合も有るっしょ。
0655デフォルトの名無しさん
2011/07/01(金) 23:55:03.690656デフォルトの名無しさん
2011/07/01(金) 23:56:50.660657デフォルトの名無しさん
2011/07/01(金) 23:57:19.39流石にお前だけはパフォーマンスが…
0658デフォルトの名無しさん
2011/07/01(金) 23:57:54.530659デフォルトの名無しさん
2011/07/01(金) 23:59:45.57符号なしの型の使い道って、せいぜい「これに入っているのは値じゃなくて
ビットイメージですよ」ってのを暗示したい時ぐらいじゃない?
0660デフォルトの名無しさん
2011/07/02(土) 00:00:24.18昔のintは16Bitだったからね
0661デフォルトの名無しさん
2011/07/02(土) 00:02:32.54…あんま実例が思い浮かばんな
>>660
あー、あるある
俺はWin32APIの勉強始めた頃、「数値型はLONGを使いましょう」みたいなのを読んで
以後、LONGで指定する癖が付いてた事が有るわ
0662デフォルトの名無しさん
2011/07/02(土) 00:06:59.40あと、16bitだと、当然レジスタも16bitだから、変数をintで宣言すると最適化でレジスタ使ってくれたんだよね
で、少しでも大きな数を使いたいから、16bit処理系ではunsigned intが標準的な変数だった
0663デフォルトの名無しさん
2011/07/02(土) 00:08:33.29さすがに勘違いが酷いと思う
0664デフォルトの名無しさん
2011/07/02(土) 00:10:49.580665デフォルトの名無しさん
2011/07/02(土) 00:11:34.57結局の所はパフォーマンスだよなあ
L2キャッシュ・L3キャッシュのヒット率とか、ガベコレの発生頻度とか考えると
必要十分な範囲で、可能な限りコンパクトに纏めたい気はして来る
0666デフォルトの名無しさん
2011/07/02(土) 00:12:13.8416bitのC言語では当然の最適化だったが
0667デフォルトの名無しさん
2011/07/02(土) 00:12:14.00クラスライブラリで使うとMSに怒られるよ
0668デフォルトの名無しさん
2011/07/02(土) 00:14:30.25データベースのカラム設計とかな >型のサイズを気にする
0669デフォルトの名無しさん
2011/07/02(土) 00:41:23.32ファイル関連でも使うな
0670デフォルトの名無しさん
2011/07/02(土) 00:57:21.510671デフォルトの名無しさん
2011/07/02(土) 01:01:17.76蒸し返すなwww
0672デフォルトの名無しさん
2011/07/02(土) 01:14:57.79shortなんか使ったらかえってパフォーマンスは落ちる気がするが....
少なくともint比で改善はしないだろう。
shortの用途って符号拡張ぐらいしか思い浮かばない
0673デフォルトの名無しさん
2011/07/02(土) 01:33:03.56一般的な用途とは思えないけど。。。
そろそろ、マイコンでSDに保存が普通になるだろうが。。。
0674デフォルトの名無しさん
2011/07/02(土) 01:37:15.290675デフォルトの名無しさん
2011/07/02(土) 01:41:30.940676デフォルトの名無しさん
2011/07/02(土) 01:48:39.680677デフォルトの名無しさん
2011/07/02(土) 02:04:45.0932bit CPU + 64bit FPU(浮動小数点ユニット)という構成だった時代が長い。
最近は CPU が64bit化しちゃってるし、
SSE とか MMX 命令だと32bit浮動小数点×4命令持ってたり、
GPU が32bit浮動小数点を基本に動いてたりで、
必ずしもint/doubleが速くない。
>>672
キャッシュヒット率の改善という意味では、構造体とか配列の場合に限ってshortが有効な場面もあるかも。
0678デフォルトの名無しさん
2011/07/02(土) 02:05:30.50long 同士だったら long になるはず。
32ビット未満なら32ビットにするっていう仕様のはず。
0679デフォルトの名無しさん
2011/07/02(土) 03:59:59.28DirectXを直接扱うのは出来ないのでしょうか?
0680デフォルトの名無しさん
2011/07/02(土) 04:11:51.82DXライブラリもラッパーだけどVC++向けに作ってるようなところあるしなあ
0681デフォルトの名無しさん
2011/07/02(土) 08:31:16.00配列同士の足し算はLINQでどのように記述すればよいのでしょうか?
たとえば,
v1 = {1,2,3,4,5,6};
v2 = {1,1,1,1,1,1}
に対して
{2,3,4,5,6,7}という値を得たいと考えています.
0682デフォルトの名無しさん
2011/07/02(土) 08:37:17.010683デフォルトの名無しさん
2011/07/02(土) 10:06:42.91ありがとうございます.
私の説明が不足していましたが,v1,v2,...vnとn個のベクトルに対して配列同士の足し算をするにはどうすればよいでしょうか?
0684デフォルトの名無しさん
2011/07/02(土) 10:12:20.83二次元とか三次元ベクトルを表す型なら加算演算子ぐらい用意してるだろ
0685デフォルトの名無しさん
2011/07/02(土) 10:16:05.410686デフォルトの名無しさん
2011/07/02(土) 10:25:10.56ttp://hibari.2ch.net/test/read.cgi/tech/1202568694/l50
0687デフォルトの名無しさん
2011/07/02(土) 10:28:21.060688デフォルトの名無しさん
2011/07/02(土) 10:46:25.10説明が不明瞭ですみません...
v∈R^nを満たすm個の配列(たとえば{v1,v2,v3,...,vm}⊂R^n)があって
これらののΣvを求めたいと考えています.
Zipは2つの配列間の操作と理解していますが,2つだけではなくm個全ての総和を求めたいと考えています.
0689デフォルトの名無しさん
2011/07/02(土) 10:59:08.580690デフォルトの名無しさん
2011/07/02(土) 11:08:34.83それはVector型作っておいて、Vector型にoperator+ を定義しておいて、
Aggregate で足せばいいんじゃない?
0691デフォルトの名無しさん
2011/07/02(土) 11:09:44.69Aggregate の中で Zip。
0692デフォルトの名無しさん
2011/07/02(土) 11:55:51.90任意次元のベクトルで>>690のようなことをすると一時オブジェクトが大量発生してとんでもなく非効率になるので
Aggregate使うならVector型に+=相当のメソッドを定義しとく
でもそれじゃ結局ループ書くわけでLINQの意味があんまり…
0693デフォルトの名無しさん
2011/07/02(土) 12:06:16.830694デフォルトの名無しさん
2011/07/02(土) 12:08:50.440695デフォルトの名無しさん
2011/07/02(土) 12:34:49.98でもこの場合はそうでもなさそうだしLINQ使ったからって分かりやすくなるわけでもないし…
0696デフォルトの名無しさん
2011/07/02(土) 13:05:16.46例外とかは知らん
0697天使 ◆uL5esZLBSE
2011/07/02(土) 13:17:27.640698デフォルトの名無しさん
2011/07/02(土) 13:21:43.530699デフォルトの名無しさん
2011/07/02(土) 13:21:48.130700デフォルトの名無しさん
2011/07/02(土) 13:26:34.150701デフォルトの名無しさん
2011/07/02(土) 13:29:06.44これをソートするときに一番効率のようソートアルゴリズムは何でしょうか?
0702デフォルトの名無しさん
2011/07/02(土) 14:00:26.140703デフォルトの名無しさん
2011/07/02(土) 14:03:45.26時間か
メモリか
コード量か
0704デフォルトの名無しさん
2011/07/02(土) 14:03:50.080705688
2011/07/02(土) 14:09:53.47ありがとうございます.
0706デフォルトの名無しさん
2011/07/02(土) 14:34:10.240707デフォルトの名無しさん
2011/07/02(土) 15:37:24.39それを階層的に5回やるとか
0708707
2011/07/02(土) 15:55:47.44普通に文字列でクイックソートすればいいんじゃね
0709デフォルトの名無しさん
2011/07/02(土) 15:56:01.21http://ideone.com/0oxyN
0710デフォルトの名無しさん
2011/07/02(土) 15:57:04.230711デフォルトの名無しさん
2011/07/02(土) 16:03:21.02面白くも何ともないなw
0712デフォルトの名無しさん
2011/07/02(土) 16:19:49.16余裕過ぎるな
0713デフォルトの名無しさん
2011/07/02(土) 16:45:00.53Matlab使え。
実際数値計算をアプリに組み込みたいなら話は別だが、
プラットフォームがPCで、数値計算そのものが目的ならMatlab選択を排除しちゃ、
苦労するだけで何もいいことはない。
0714デフォルトの名無しさん
2011/07/02(土) 16:59:01.220715デフォルトの名無しさん
2011/07/02(土) 16:59:55.82プログラミングのこと全然知らないんだけど、常駐プログラムみたいな感じで、
ネット上の特定のデータを定期的に取得するプログラムを作りたいと思ってます。
そのために選択するべき言語はC#でよろしいのでしょうか?
0716デフォルトの名無しさん
2011/07/02(土) 17:07:03.52取得したデータをどうするかに寄る。
何所かに保存するとか、自動的にメール配信するとか、画面上にダイアログ出して表示するとか。
そのくらいの用途なら、俺はPowerShellでやっちゃうかな。
0717デフォルトの名無しさん
2011/07/02(土) 17:10:40.870718デフォルトの名無しさん
2011/07/02(土) 17:25:07.59簡単に前科つくぞ
0719デフォルトの名無しさん
2011/07/02(土) 17:29:03.36さっき未解決事件スレ見てたから一瞬ビクっとした。
0720デフォルトの名無しさん
2011/07/02(土) 17:46:15.93返信ありがとう。
取得した数値データはエクセルのようにまとめて表示できるようにしたいと考えてます。
PowerShell調べてきます。
0721デフォルトの名無しさん
2011/07/02(土) 18:17:41.770722デフォルトの名無しさん
2011/07/02(土) 22:36:05.990723デフォルトの名無しさん
2011/07/02(土) 23:28:24.08まさかDirectCompute使えと? チェーンソーで鉛筆削るようなもんだぞw
0724デフォルトの名無しさん
2011/07/02(土) 23:39:48.800725デフォルトの名無しさん
2011/07/03(日) 03:18:33.110726デフォルトの名無しさん
2011/07/03(日) 03:44:15.840727デフォルトの名無しさん
2011/07/03(日) 11:00:38.07あまり書かないから現存してない、とかじゃ?
俺も汚いんだよな・・・
0728デフォルトの名無しさん
2011/07/03(日) 12:17:49.18自分でどこか違うなぁって重いながらどこが違うかわからな。
0729デフォルトの名無しさん
2011/07/03(日) 13:55:40.310730デフォルトの名無しさん
2011/07/03(日) 14:00:26.32字がうまい人は食べ物にありつけず自然淘汰されたんだ
そうして生き残ったのが俺たちの祖先って訳さ
0731デフォルトの名無しさん
2011/07/03(日) 17:20:01.76ほとんどがWebデータベースの説明みたいだ。ツマンネ。
もっと幅広いジャンルで、Webアプリでこんな面白いことやってる、
どうやってつくってるんだ?みたいなサイトや本ってないですか?
0732デフォルトの名無しさん
2011/07/03(日) 17:23:50.70機能を利用して何をするかは解説本の範疇じゃなく事例本の範疇よね
0733デフォルトの名無しさん
2011/07/03(日) 20:35:44.68http://msdn.microsoft.com/ja-jp/windowsazure/hh180847
0734デフォルトの名無しさん
2011/07/03(日) 21:13:41.50デスクトップアプリなんかは、MFCなんか書くのが普通ですか?
0735デフォルトの名無しさん
2011/07/03(日) 21:18:20.90矢印キーで再生位置を変えたいのですが
左キーを押すと-5秒戻って、右キーを押すと+5秒進みたいのですが
keydownイベントを入れてやってみたのですが、1回押しただけならちゃんと正常に再生位置を変えられるのですが
押しっぱなしにして離したときに再生位置が変わりまくります
押しっぱなしにする事で処理が蓄積されているのだと思うのですが
一般的なプレイヤーのように離したときの位置で再生するようにできませんか?
0736デフォルトの名無しさん
2011/07/03(日) 21:20:03.23いや、普通に Windows デスクトップっつったら .NET。
MFC はない。
パフォーマンスが必要な大規模アプリに限って使いはすると思うけど、
普通は C# か VB で書く。
0737デフォルトの名無しさん
2011/07/03(日) 21:33:24.40WinAPI叩いたときみたいなの
0738デフォルトの名無しさん
2011/07/03(日) 21:38:08.60大規模って。。。
mfcは最も開発される機会の多い中規模開発をターゲットとして設計されてるんだが。。。
大規模だと、unix系OS独占なので、mfcも.netも出番はない
0739デフォルトの名無しさん
2011/07/03(日) 21:43:43.92Windows デスクトップアプリケーションで.NETなんて
みたことがない。
0740デフォルトの名無しさん
2011/07/03(日) 21:53:59.460741デフォルトの名無しさん
2011/07/03(日) 22:00:14.770742デフォルトの名無しさん
2011/07/03(日) 22:02:37.31mayaとかblenderは大規模?
0743デフォルトの名無しさん
2011/07/03(日) 22:04:26.23Visual Studio 2010 と Blend。
0744デフォルトの名無しさん
2011/07/03(日) 22:04:43.40MFCでやってきたけどC#はヤバイくらい簡単。
これはもう専門職じゃない感じ。
フィーリングで作れちゃう感じだよ。
言語仕様がというより.Netフレームワークが便利すぎるんだろうね。
0745デフォルトの名無しさん
2011/07/03(日) 22:08:59.33見識の狭さを露呈するだけだから見たことがないとか言い切らない方がいい
0746デフォルトの名無しさん
2011/07/03(日) 22:08:59.93全部、見た目が同じになる。
世界観が作りにくい、ってことか。
0747デフォルトの名無しさん
2011/07/03(日) 22:10:48.94Expression Encoderとかあるから、やる気が有れば出来るんじゃないか
0748デフォルトの名無しさん
2011/07/03(日) 22:25:34.01中規模
0749デフォルトの名無しさん
2011/07/03(日) 22:32:52.11FFでも作ってんの?
0750デフォルトの名無しさん
2011/07/03(日) 22:37:14.950751デフォルトの名無しさん
2011/07/03(日) 22:38:07.630752デフォルトの名無しさん
2011/07/03(日) 22:39:27.97微妙に中途半端だからなぁ
0753デフォルトの名無しさん
2011/07/03(日) 22:43:38.65世界観( ・`ω・´)キリッ
0754デフォルトの名無しさん
2011/07/03(日) 22:45:54.750755デフォルトの名無しさん
2011/07/03(日) 22:46:15.620756デフォルトの名無しさん
2011/07/03(日) 22:47:51.68それともソースコードを眺めた時の事をいってるの?
0757デフォルトの名無しさん
2011/07/03(日) 22:48:45.34ババーンってなって
ビシッと決まった画面
よくわからない^q^
0758デフォルトの名無しさん
2011/07/03(日) 22:57:02.88>大規模とか中規模とか
どんな意味で言ってるのか、さっぱり解らねーぜよ。
一口に 「大規模」 って言っても、
アプリの開発工数的に大規模なのか
搭載される対象が大規模なのか (部屋一つ占拠する様な産業機械とか)
成果物を使って出来る事が大規模なのかで (OSとか)
全是意味が違って来るっしょ。
0759デフォルトの名無しさん
2011/07/03(日) 23:02:11.59そんな大規模はねーだろw
0760デフォルトの名無しさん
2011/07/03(日) 23:38:27.47WPFのRepeatButton相当のコントロールを探すか作るかすれば
0761デフォルトの名無しさん
2011/07/03(日) 23:43:57.710762デフォルトの名無しさん
2011/07/03(日) 23:45:05.460763デフォルトの名無しさん
2011/07/03(日) 23:51:13.97ビルだぜビル。
部屋ひとつとかハナクソだろ。
0764デフォルトの名無しさん
2011/07/04(月) 00:05:10.98嘘乙
官公庁向けで.NETなんて100%ありえん
0765デフォルトの名無しさん
2011/07/04(月) 00:38:06.44761のものとは全然違う(多分)けど、うちも一応官公庁向けのものを.NETでやってるよ
ありえん、ってのは何を根拠に?
0766デフォルトの名無しさん
2011/07/04(月) 00:49:22.270767デフォルトの名無しさん
2011/07/04(月) 01:19:54.88。。。OSは全然大規模じゃないよ?
大きさも、部屋一つ分占拠してようが産業用機械も組み込みに分類される
(ソフト開発の規模的には小規模な方)
大規模っつったら、工数の多さとそれに伴う予算の大きさ
0768デフォルトの名無しさん
2011/07/04(月) 02:33:41.24> マイクロソフトがWindows Vista(1月30日発売)の開発に投じた金額
> は5年間で推定75億ドルにのぼるという。これに対して、アップルの
> 全開発費は5年間で30億ドルほど。
大・中・小の基準は人それぞれだけどね……
OSって小規模なの?
0769デフォルトの名無しさん
2011/07/04(月) 02:42:23.511年あたりだといくらだよw
0770デフォルトの名無しさん
2011/07/04(月) 02:42:48.120771デフォルトの名無しさん
2011/07/04(月) 04:56:14.360772デフォルトの名無しさん
2011/07/04(月) 05:14:00.200773デフォルトの名無しさん
2011/07/04(月) 07:51:53.140774デフォルトの名無しさん
2011/07/04(月) 08:50:43.440775デフォルトの名無しさん
2011/07/04(月) 10:01:38.62そこにパソコンのユーザー名?だかなんかが載ってしまいます
なるべくこういう情報を載せたくないのですがこのファイルって消してもいいのでしょうか?
0776デフォルトの名無しさん
2011/07/04(月) 10:02:39.880777デフォルトの名無しさん
2011/07/04(月) 10:06:56.800778デフォルトの名無しさん
2011/07/04(月) 10:12:17.56除けばその程度の情報漏れたところで知れてるけどねw
0779デフォルトの名無しさん
2011/07/04(月) 10:22:36.300780デフォルトの名無しさん
2011/07/04(月) 10:56:30.410781デフォルトの名無しさん
2011/07/04(月) 11:17:08.53すいませんそれkwsk
0782デフォルトの名無しさん
2011/07/04(月) 11:20:07.85情報科学屋さんを目指す人のメモ exeファイル中の個人情報
http://did2.blog64.fc2.com/blog-entry-26.html
0783デフォルトの名無しさん
2011/07/04(月) 12:38:38.420784デフォルトの名無しさん
2011/07/04(月) 12:40:47.430785デフォルトの名無しさん
2011/07/04(月) 13:29:34.20バッチリ作成者がユーザー名だな
0786デフォルトの名無しさん
2011/07/04(月) 13:47:26.00ユーザー名がアイドルやアニメキャラの奴は涙目だな
0787デフォルトの名無しさん
2011/07/04(月) 13:48:33.450788デフォルトの名無しさん
2011/07/04(月) 13:57:04.74今までの話はほとんどC#関係無いけどなw
0789デフォルトの名無しさん
2011/07/04(月) 16:30:22.83xamlデザイナーでMainWindowにCanvasを追加して、そこにメソッドでコントロールを追加させるときに
MainWindowのメソッドでは
void controlAdd(){ this.canvas.Children.Add(new Rectangle() ) }
こんな感じで書いています
ここで、例えばRectangleを継承した独自クラスに「インスタンス自身をメインウィンドウのキャンバスに追加する」
というメソッドをもたせるときはどのように「メインウィンドウのキャンバス」を指定してあげるのがいいんでしょうか
0790789
2011/07/04(月) 16:33:53.14class myRect : Rectangle{
void controlAddEx(){ 「メインウィンドウのキャンバス」.Children.Add( this ) }
}
こういう感じでメソッドを持たせてあげるとすると、
要はどのようにしてメインウィンドウのインスタンスを渡してあげるかということになると思うのですが
Window main = System.Windows.Application.Current.MainWindow;
((MainWindow)main).appCanvas.Children.Add(this);
一応、これで渡してあげれてるのは確認しました
でもちょっと煩雑な気がするので、もうちょっと見た目がすっきりするような書き方があったら教えてください
0791デフォルトの名無しさん
2011/07/04(月) 16:42:36.48http://msdn.microsoft.com/ja-jp/library/system.windows.frameworkelement.parent.aspx
クラスを使うならまずクラスを知りましょう
パブリックメソッドとパブリックプロパティ一覧に目を通すくらいはしてもいいはずです
0792789
2011/07/04(月) 17:19:09.59Parentプロパティをどのように使ってメインウィンドウのインスタンスを把握するのですか?
class Rectangleのインスタンスを作成して、その時点ではParentは空ですよね
0793デフォルトの名無しさん
2011/07/04(月) 17:45:23.52Children.AddしてデバッガでParentプロパティ見てみろ
0794デフォルトの名無しさん
2011/07/04(月) 17:52:00.280795デフォルトの名無しさん
2011/07/04(月) 18:02:33.480796デフォルトの名無しさん
2011/07/04(月) 18:03:54.140797デフォルトの名無しさん
2011/07/04(月) 18:03:56.84> ここで、例えばRectangleを継承した独自クラスに「インスタンス自身をメインウィンドウのキャンバスに追加する」
> というメソッドをもたせるときはどのように「メインウィンドウのキャンバス」を指定してあげるのがいいんでしょうか
Rectangleはsealedなので悩む必要ありません。
0798789
2011/07/04(月) 18:06:16.50namespace WpfApplication1
{
public class Class1 : UserControl
{
public Class1() { }
public void contAddEx(){
//「メインウィンドウ」.canvas.Children.Add(this);
//メインウィンドウをどう指定するか
//なにかしらのParentプロパティを辿ってMainWindowのインスタンスを取得する?
}
}
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Class1 cl = new Class1();
//ここでは cl.Parent=null
cl.contAddEx();
}
}
}
こんな感じなんですが、どこでどのインスタンスを何に向けてAddすればよろしいんでしょうか?
0799789
2011/07/04(月) 18:09:33.49Rectangleは継承できないってことですね
ご指摘ありがとうございます
0800デフォルトの名無しさん
2011/07/04(月) 18:11:06.38情報は漏らさず書けよトンチキ
0801デフォルトの名無しさん
2011/07/04(月) 18:12:20.30{
public MainWindow()
{
InitializeComponent();
Canvas c = new Canvas();
AddChild(c);
Rectangle r = new Rectangle();
c.Children.Add(r);
FrameworkElement e = r.Parent as FrameworkElement;
while (e != null && !(e is Window))
{
e = e.Parent as FrameworkElement;
}
}
}
0802801
2011/07/04(月) 18:12:42.190803デフォルトの名無しさん
2011/07/04(月) 18:14:02.230804789
2011/07/04(月) 18:49:23.81教えていただきたかったのは
>>789
> 独自クラスに「インスタンス自身をメインウィンドウのキャンバスに追加する」
> というメソッドをもたせる
ということでしたので、そこからだと、
public partial class MainWindow : Window{
public static FrameworkElement e;//追加
public MainWindow()
{InitializeComponent();
Canvas c = new Canvas();
AddChild(c);
Rectangle r = new Rectangle();
c.Children.Add(r);
//FrameworkElement e = r.Parent as FrameworkElement;
e = r.Parent as FrameworkElement;//追加
while (e != null && !(e is Window))
{e = e.Parent as FrameworkElement;}
}
}
としたうえで、クラス側ではこんな感じにして
class Class1{
void contAdd(){ (MainWindow.e as MainWindow).canvas.Children.Add(this) }
}
メインウィンドウの場所を示す目印を置いておく感じで使おうということでしょうか?
参考にさせていただきますありがとうございます
0805デフォルトの名無しさん
2011/07/04(月) 18:53:39.26Addした後で親がわかってもしょうがない
0806デフォルトの名無しさん
2011/07/04(月) 18:55:42.930807デフォルトの名無しさん
2011/07/04(月) 19:02:11.85親が子を追加するのが普通なのでその論理は成り立たない
0808デフォルトの名無しさん
2011/07/04(月) 19:04:57.10{
public MainWindow()
{
InitializeComponent();
Canvas c = new Canvas();
AddChild(c);
DokujiClass r = new DokujiClass();
c.Children.Add(r);
}
}
これだけだろ
独自クラスの方でMainWindowが知りたければParent辿っていけばいいだけの話
0809デフォルトの名無しさん
2011/07/04(月) 19:06:00.46最初にそう指摘するならともかく
今になってそれは苦しい
0810デフォルトの名無しさん
2011/07/04(月) 19:07:21.75それは苦しい(キリリッ
0811デフォルトの名無しさん
2011/07/04(月) 19:10:07.820812デフォルトの名無しさん
2011/07/04(月) 19:13:08.28時代は変わったものだ。
0813デフォルトの名無しさん
2011/07/04(月) 19:20:26.62Windows 8 のグラフィック API は WPF に近いらしいし。
0814デフォルトの名無しさん
2011/07/04(月) 19:36:21.43C#入門でWPF使うってのは珍しい気がする…
0815デフォルトの名無しさん
2011/07/04(月) 19:38:43.04それができないのは、通常、記事書く側が追いきれないからであって、
読む側が難しいからじゃない。
書ける人はWPFで入門記事書いた方がいい。
0816デフォルトの名無しさん
2011/07/04(月) 19:42:00.210817デフォルトの名無しさん
2011/07/04(月) 19:42:31.56依存関係プロパティに添付プロパティ、ルーティングイベントにバインディングの数々
0818デフォルトの名無しさん
2011/07/04(月) 19:49:18.04初心者染め上げる。
XAML も別に何も困らなくね?
どうせ Blend か VS で書くんだし。
依存関係プロパティは教えるの面倒だけども、そこスルーしてでもバインディングは最初から教えるべき。
GUI のビューにはデータのプレースホルダーしか残しちゃいけない。
これは WPF だけじゃなくて、ASP.NET でも MVC はそういう構造だし。
0819デフォルトの名無しさん
2011/07/04(月) 20:08:29.49別にC#を主力にする気はないからC#を捨ててWPFを覚えたほうがいいの?
初心者の俺としては無駄なものを覚えたくないからそこのへんハッキリしてください!
0820デフォルトの名無しさん
2011/07/04(月) 20:11:38.22まあ、必要に迫られてなきゃWin8の発表待ってからでいいんじゃね?
WPFっぽい(WPFを洗練した感じらしい)ってだけで、「WPFです」ではないし。
0821デフォルトの名無しさん
2011/07/04(月) 20:12:24.81捨てるとかイミフ
0822デフォルトの名無しさん
2011/07/04(月) 20:17:05.520823789
2011/07/04(月) 20:18:47.52UIをポコポコ感覚的においていけるんで初学者としては勉強しててとても楽しいです
メインウィンドウの位置を簡単に取得できるように下準備しておくという方向なら
シングルトンにしてインスタンスへはスタティックプロパティで触るようにするのが一番すっきりするような気がするのですが
MeinWindowをシングルトンにする場合に気をつけることは何かありますか?
0824デフォルトの名無しさん
2011/07/04(月) 20:23:11.91子コントロールは子コントロール自身のこと以外感知するな
自然に見える範囲で動作を構成できるようにしろ
お前前にいた人の話聞かないシングルトン坊だろ
日本語読み取れないうちは質問すんなや
0825デフォルトの名無しさん
2011/07/04(月) 20:25:14.650826デフォルトの名無しさん
2011/07/04(月) 20:27:37.500827デフォルトの名無しさん
2011/07/04(月) 20:35:03.780828デフォルトの名無しさん
2011/07/04(月) 20:42:58.450829デフォルトの名無しさん
2011/07/04(月) 21:34:09.78http://csl.ensm-douai.fr/noury/20
0830デフォルトの名無しさん
2011/07/04(月) 21:35:02.95もうC#を勉強して3週間ぐらいだけど(実質はC#しってHello worldから初めて今まで1年以上たつけど)
0831デフォルトの名無しさん
2011/07/04(月) 21:45:55.59その時に「本当のC#」をお見せしますよ
0832デフォルトの名無しさん
2011/07/04(月) 21:47:40.95WPFはExpressでは、足りないものが多すぎる。
0833デフォルトの名無しさん
2011/07/04(月) 22:49:22.96Expressで足りないものが多すぎる件についてkwsk
0834デフォルトの名無しさん
2011/07/04(月) 23:43:22.960835デフォルトの名無しさん
2011/07/04(月) 23:45:36.280836デフォルトの名無しさん
2011/07/04(月) 23:55:52.07(name, age) = GetNameAndAge()
本来こんな感じで使うもんだけどもちろんC#でこういうことはできない。
0837デフォルトの名無しさん
2011/07/04(月) 23:56:28.020838デフォルトの名無しさん
2011/07/05(火) 00:11:58.35C#でタプルをサポートするとその利点が大きく損なわれる
pythonみたいな動的言語だと元々そのヒントが無いからタプルによるマイナスは無いんだけど
0839デフォルトの名無しさん
2011/07/05(火) 00:41:25.73GridViewに次の様に連番があるとします。
数が多いので指定した数値に該当する行をGridView内で上下中央に
スライドさせたいのですがどうすれば良いでしょうか?
社員番号
1
2
3
〜 略 〜
1000
番号で 550 と入力しスクロールを実行すると 550番が中央に来る様にしたいです。
賢人の皆様、お知恵を拝借下さい。
0840デフォルトの名無しさん
2011/07/05(火) 08:57:11.940841デフォルトの名無しさん
2011/07/05(火) 11:29:01.850842デフォルトの名無しさん
2011/07/05(火) 11:32:53.30あるとすれば動的に部品を追加したりするコードを書くときのためくらいかなあ・・
0843デフォルトの名無しさん
2011/07/05(火) 11:59:26.51でも何とかなっちゃうか
0844デフォルトの名無しさん
2011/07/05(火) 12:07:37.58Timerで動かす方法を作って、タスクマネージャで見てみました。
アニメーションがあまりにも簡単な物だったので、ほとんど差は出ませんでしたがw、
CPU使用率はThread方式が若干低く、PF使用量はほぼ一緒という感じですか?
(描画してる物が同じで、Timerが動いてないのだから当然か?)
背景でアニメを動かしつつ、別のプログラムを動かしたいときは、
CPUの負担が軽いThread方式のほうが有利ってことですか?
ところでPF(ページファイル)使用量って何ですか?
0845デフォルトの名無しさん
2011/07/05(火) 12:18:24.93C#に関係ない部分だからググって調べろよ
と言いたい所だけど、仮想メモリのこと
0846デフォルトの名無しさん
2011/07/05(火) 12:38:19.380847デフォルトの名無しさん
2011/07/05(火) 13:21:13.47とかだったら関係あるのに
0848デフォルトの名無しさん
2011/07/05(火) 14:55:05.45NameプロパティをもつPersonクラスをつくってそれに変更を加えるとき
コード側でDataContextにPersonのインスタンスをつっこんで、xaml側では
<StackPanel>
<TextBlock Name="textBlock1"
Text="{Binding Path=Name }" Background="WhiteSmoke" />
<TextBox Name="textBox1">
<Binding Path="Name" UpdateSourceTrigger="PropertyChanged"></Binding>
</TextBox>
<Button Content="name_change" Name="button1" Click="button1_Click" />
<Button Content="name_show" Name="button2" Click="button2_Click" />
</StackPanel>
これでTextBoxに新たな値を入力したとき、バインディングソースが変更され
同時にソースの変更が他のTextBlockなどの表示にも反映されるのは確認できました
しかしビハインドコードからインスタンスに直接変更を加えたときは、これらの表示には変更が反映されません
ソースのプロパティに変更が加えられたことをバインディングターゲットに知らせるには
INotifyPropertyChangedインターフェイスを実装する必要があるということで、
実際に実装してみるとコードからの変更でも通知が働き、バインディングされた各コントロールが更新されることも確認できました
ですがこうなると逆に、なぜバインディングターゲットからの変更については
ソースがINotify〜を実装していなくとも全てのターゲットに変更が通知されるのかが不思議です
この違いはどこからきてるものなのでしょうか?
0849デフォルトの名無しさん
2011/07/05(火) 14:59:52.52クラスの内部でそん時にバインディングソースに値を返してるだけ
何か不思議なところあるか?
0850デフォルトの名無しさん
2011/07/05(火) 15:20:04.30ソース自身が「変更されました通知」を出す代わりに、ターゲットが「ソースを変更しました通知」を出してるわけですね
0851デフォルトの名無しさん
2011/07/05(火) 16:16:46.14これを呼ぶとバインディングソースのBindingオブジェクトにBinding.SourceUpdatedが発生する
で、同じBindingオブジェクトを参照している連中全員がこれを受け取るという寸法
0852デフォルトの名無しさん
2011/07/05(火) 16:41:44.07バルーンツールチップにDataGridViewを埋め込みたいのですが、できますか?
0853デフォルトの名無しさん
2011/07/05(火) 16:48:00.260854852
2011/07/05(火) 16:50:43.29なんていうか、チッチャイWindowを表示して、GridViewはりつけよっと
ありがとう。
0855839
2011/07/05(火) 20:22:08.340856デフォルトの名無しさん
2011/07/05(火) 20:29:43.52>>840
0857デフォルトの名無しさん
2011/07/05(火) 20:31:07.22リストのトップにいるやつでもindexが5とかで、0じゃない数字たった気がするんですが
C#のListViewのItemsのItemのIndexって表示されている順番と一致していると考えていいですか?
例えば先頭の0から4まで削除したら、今まで5だったヤツは0になる、と。
0858デフォルトの名無しさん
2011/07/05(火) 20:32:51.18・CollectionView.MoveCurrentTo
・DataGridView.FirstDisplayedScrollingRowIndex
0859デフォルトの名無しさん
2011/07/05(火) 21:14:34.46ありがとうございます!!
何とかやりたい事が出来そうです!!
thaks you for your brain
0860デフォルトの名無しさん
2011/07/05(火) 21:37:40.400861デフォルトの名無しさん
2011/07/05(火) 21:46:02.53くらだらねー機能ばっか増やすのに工数使ってんなよ
0862デフォルトの名無しさん
2011/07/05(火) 21:57:29.330863デフォルトの名無しさん
2011/07/05(火) 21:59:10.24あんたがPCアップデートしたら。
0864デフォルトの名無しさん
2011/07/05(火) 22:01:27.59>IEqualityComparer<T> インターフェイスを実装する代わりに EqualityComparer<T> から派生させることをお勧めします。
>EqualityComparer<T> クラスは、Object.Equals メソッドの代わりに IEquatable<T>.Equals メソッドを使用して
>等しいかどうかをテストするからです。
とあるんだが、この意味というか利点がわからなくて悩んじまったよ
結局StackOverflow.comにわかりやすい説明してくれてる人がいて納得できたが
0865デフォルトの名無しさん
2011/07/05(火) 22:13:15.33マイクロソフトはずっとこの手の情報をヘルプに書いてこなかったけど仕様としては不定なのかな?
0866デフォルトの名無しさん
2011/07/05(火) 22:22:21.88あちこち質問する時間があれば自分で試せるだろw
馬鹿じゃないのか。
というか、ListViewItemCollectionのインデクサの解説よめば普通に分かるだろ。
0867デフォルトの名無しさん
2011/07/05(火) 22:23:15.47ありがと
試さないけどインデクサの解説読んでくる
0868デフォルトの名無しさん
2011/07/05(火) 22:28:24.560869デフォルトの名無しさん
2011/07/05(火) 22:33:24.120870デフォルトの名無しさん
2011/07/05(火) 22:35:17.280871デフォルトの名無しさん
2011/07/05(火) 22:39:36.340872デフォルトの名無しさん
2011/07/06(水) 00:05:36.23どんなに頑張っても+−25マイクロ秒の誤差がでます
精度のよいライブラリはないでしょうか?
0873デフォルトの名無しさん
2011/07/06(水) 00:07:51.03メトロノームでネタ振ってくれて構わんから
0874デフォルトの名無しさん
2011/07/06(水) 00:09:31.500875デフォルトの名無しさん
2011/07/06(水) 00:30:24.41つまんねーから腹膜にガン細胞ばら撒いてのたくりまわって死ね
0876デフォルトの名無しさん
2011/07/06(水) 01:00:11.72.NETで書かれた、CADや3Dなんて使用に耐えうるとは思えん
キーエンスのVisionEditorなんて最悪としか言いようがない
なぜに.NET使うのかと激しく文句言ったよ、おそくてたえられん
0877デフォルトの名無しさん
2011/07/06(水) 01:00:40.56これが自然科学だったらあんたの態度の方が正しいと思うが、
プログラミングは一種人文学だからな。
インデックスがその時次第で連続だったり歯抜けが放置されたままだったり、
そんな気まぐれな実装をする奴がいるのか現実問題。
っていうかそもそも常識で考えれば歯抜け状態を許すなんて実装はありえないから、
その常識を念のため確認するだけのことだろ。
0878デフォルトの名無しさん
2011/07/06(水) 01:03:50.13だったら確認してもしょうがないのでは。
確認したときはたまたま正しかったかもしれん
0879デフォルトの名無しさん
2011/07/06(水) 01:06:35.380880デフォルトの名無しさん
2011/07/06(水) 01:09:44.93列挙操作でヌルリとか
0881デフォルトの名無しさん
2011/07/06(水) 01:51:44.12app.configってやつは配列使えないっぽいんで・・・
0882デフォルトの名無しさん
2011/07/06(水) 02:02:36.40配列をforeachで一要素ずつ吐いてって、何らかの衝突しないデリミタを考える。
っていうのはどうだろう。
0883デフォルトの名無しさん
2011/07/06(水) 02:20:26.74>>881
自分は大体、Environment.GetFolderPath(ApplicationData) の下に設定ファイル作って、
XmlSerializer の類でその手の保存してる。
0884デフォルトの名無しさん
2011/07/06(水) 04:08:37.08手っ取り早いのがよければこれ
0885デフォルトの名無しさん
2011/07/06(水) 04:09:35.670886デフォルトの名無しさん
2011/07/06(水) 07:41:01.51一番上のコントロールにしか発生しない。
ベースとなるコントロールにも、イベントを発生する方法は?
0887デフォルトの名無しさん
2011/07/06(水) 07:57:04.89別に歯抜けとは言っていない。
DBみたいに効率を重視して保持している一方
表示に関してはいくつかのフラグをみてそれにあわせて
ソートされた結果を別に持っているかもしれないだろ。
0888デフォルトの名無しさん
2011/07/06(水) 08:15:46.90なんかもうその時点でおかしくない?
コレクションの要素を削除追加したら画面への描画がロックされてなかったら同期取れないじゃん。
コレクションの要素を操作するときは画面への描画をどうやってロック、アンロックするんだ?
その仕組みが無い限りコレクションのオーダーと表示のオーダーが同じと言う保障はまったく無いだろ。
0889デフォルトの名無しさん
2011/07/06(水) 08:24:33.09ビュー上だけで並べ替えたりする必要があるときは間にCollectionViewを挟んで明確に分離する
0890デフォルトの名無しさん
2011/07/06(水) 08:47:27.44何個も重ねているって
何段も継承してるってこと?
オーバーライドしてるOnDoubleClickとかOnMouseClickメソッドで
baseの該当メソッドちゃんと呼ぶ
0891デフォルトの名無しさん
2011/07/06(水) 08:49:30.02>コレクションの要素を削除追加したら画面への描画がロックされてなかったら同期取れないじゃん。
>コレクションの要素を操作するときは画面への描画をどうやってロック、アンロックするんだ?
ちょっと言ってることがよく分かりません
0892デフォルトの名無しさん
2011/07/06(水) 10:28:50.000893デフォルトの名無しさん
2011/07/06(水) 11:27:28.84?
0894デフォルトの名無しさん
2011/07/06(水) 12:13:17.25入れるの面倒くさくていれてない系ですかね?
0895デフォルトの名無しさん
2011/07/06(水) 12:15:12.420896デフォルトの名無しさん
2011/07/06(水) 13:02:32.570897デフォルトの名無しさん
2011/07/06(水) 13:05:11.17ソニーみたいに
今4.0が入ってる所は少ないんじゃないかな
0898デフォルトの名無しさん
2011/07/06(水) 13:16:23.02安定して動くことが大事で、余計な部分で業務が止まったら損失大きいし
0899デフォルトの名無しさん
2011/07/06(水) 16:30:52.80まだプログラミング始めてあまり時間が経ってないので、慣れてないのもあるのですが
いつもぐちゃぐちゃになってしまって、クラス跨いだりすると意味がわからなくなります・・・
どうにか綺麗にコーディングするコツを教えてもらえないでしょうか?
0900デフォルトの名無しさん
2011/07/06(水) 16:35:22.91スパゲティコードで書け
0901デフォルトの名無しさん
2011/07/06(水) 16:48:50.01リファクタリングしろ。
プロトタイプはプロトタイプと割り切る。
テストしっかり書いておいて、クソコードはどこかで機会見て書き換える。
0902デフォルトの名無しさん
2011/07/06(水) 16:50:23.920903デフォルトの名無しさん
2011/07/06(水) 18:54:45.80出てくるのは他のプログラム言語だったり、英語だったりして、困っております。
C#で日本語で書かれた解説どこかに無いですかね?
0904デフォルトの名無しさん
2011/07/06(水) 18:57:42.110905デフォルトの名無しさん
2011/07/06(水) 18:57:54.12他言語のを参考にすれば良いじゃん。
別に英語でもコードを見ればやりたいことはわかるだろ?
0906デフォルトの名無しさん
2011/07/06(水) 18:58:32.41要するに重みをどう解釈するか。って話でしょ?
自分だったら、配列に値を突っ込む際に重いやつほど同じあたいか同じ参照たくさん突っ込んでランダムシャッフルするかなぁ。
0907デフォルトの名無しさん
2011/07/06(水) 18:58:45.06他の言語のコードあるなら、移植くらいしろよ
その程度の応用力無いと、成長出来んぞ
0908デフォルトの名無しさん
2011/07/06(水) 21:13:05.81継承ではなく、重ねてる
タイマーでマウスのクリック監視しかないかな
0909デフォルトの名無しさん
2011/07/06(水) 21:20:43.330910デフォルトの名無しさん
2011/07/06(水) 21:32:18.78int i = 0;
double sum = pockets.Sum(), rnd = random.NextDouble() * sum, s = 0;
while (rnd <= s) { s += pockets[i++]; }
return i;
pocketsは重みの配列(double[])
0912デフォルトの名無しさん
2011/07/06(水) 21:37:41.16order byの指定無しだとinsert順に取得できることを確認できた
0913デフォルトの名無しさん
2011/07/06(水) 21:37:59.40int[] arr = new int[]
{
a,a,a,a,a,... * p,
b,b,b,b,b... * q,
c,c,c,c,c... * r
}
あとは乱数で取り出す
0917デフォルトの名無しさん
2011/07/06(水) 21:44:16.450918デフォルトの名無しさん
2011/07/06(水) 21:45:19.59を計算した配列を作っておいてバイナリサーチかな
0920デフォルトの名無しさん
2011/07/06(水) 23:10:28.880921デフォルトの名無しさん
2011/07/06(水) 23:15:43.800922デフォルトの名無しさん
2011/07/06(水) 23:16:03.42class hoge
{
private int hoge;
public void Set(int value)
{
this.hoge = value + 10;
}
}
のSet関数のように特定の値を足すようにプロパティで記述できますかね?
0923デフォルトの名無しさん
2011/07/06(水) 23:19:58.170924デフォルトの名無しさん
2011/07/06(水) 23:19:58.210925デフォルトの名無しさん
2011/07/06(水) 23:24:49.39SelectionMode
0926デフォルトの名無しさん
2011/07/06(水) 23:26:38.53教本を選ぶ際に気をつける点とかありますか?
0927デフォルトの名無しさん
2011/07/06(水) 23:28:38.91.NET系の入門書を選ぶと言語仕様の理解が足らず
C#そのものの入門書を選ぶと.NET Frameworkの理解に欠ける
0928デフォルトの名無しさん
2011/07/06(水) 23:31:07.810929デフォルトの名無しさん
2011/07/06(水) 23:34:44.28昔の参考書のコードのコンパイルが通らないというようなことはない
Javaですらバージョンアップでキーワードが増えてコンパイル通らなくなったりすることがあるけど
C#の場合は同名の識別子が存在する場合はキーワードがキーワードじゃなくなったりする徹底ぶり
0930デフォルトの名無しさん
2011/07/06(水) 23:34:51.67じゃあ、聞くけども、C++(0x いつになったら正式告知されるんだよ)は「仕様定まってる」と言うの?
0931デフォルトの名無しさん
2011/07/06(水) 23:37:09.97わざわざ狙って変なコード書けば、
1.0でコンパイル通ったコードを2.0で通らなくするとかも可能ではあるけども。
0932デフォルトの名無しさん
2011/07/06(水) 23:41:57.41やってみるとわかるけど、狙ってもできないw\
0933デフォルトの名無しさん
2011/07/06(水) 23:44:57.43ジェネリック導入の前後で解釈の仕方が変わる。
まあ、誰がこんなコード書くんだって話だけど。
0934デフォルトの名無しさん
2011/07/06(水) 23:47:38.11int from = 5;
var var = 3;
とかが普通にコンパイル OK だし。
0935デフォルトの名無しさん
2011/07/06(水) 23:51:15.89文法定義やコンパイラの実装がすごい汚くなる
0936デフォルトの名無しさん
2011/07/06(水) 23:51:35.71いや、動かすのはUNITYってそふとなんですよ。
>>928
IT系はそういうの多すぎですよねえ。
>>929
やり方が簡単になったりってのが頻繁だったり?
>>930
公式にはもう動かないと思うのですが。
>>931
そういうものですか。心配要らない様ですね。
>>932
わかりました!
>>933
だいじょうぶですか。
>>934
なんかおじけづいてきました・・・
0937デフォルトの名無しさん
2011/07/06(水) 23:59:23.63それくらいはまあそうだろうって感じだけど
varっていうクラスがあったらvarがvarクラスになるのにはびっくりした
0938デフォルトの名無しさん
2011/07/07(木) 00:05:30.53所詮C#ってインタプリタじゃん
0939デフォルトの名無しさん
2011/07/07(木) 00:06:56.77インタプリタじゃ無いよ。
0940デフォルトの名無しさん
2011/07/07(木) 00:07:03.37いやいや
それは違う
0941デフォルトの名無しさん
2011/07/07(木) 00:11:21.090942デフォルトの名無しさん
2011/07/07(木) 00:12:24.91いや、モードを切り替える方法じゃなくて、実際にどうやって複数行を選択するかを知りたいんですが
お願いします
0943デフォルトの名無しさん
2011/07/07(木) 00:13:31.06JITでネイティブコード化するのでぜんぜん違う
0944デフォルトの名無しさん
2011/07/07(木) 00:19:07.34SelectedItems.Add
0945デフォルトの名無しさん
2011/07/07(木) 00:22:41.08CTRLとかSHIFT押しながら
0946デフォルトの名無しさん
2011/07/07(木) 00:23:34.39行けました。ありがとうございました
0947デフォルトの名無しさん
2011/07/07(木) 00:38:58.06インタプリタではない
ヴァーチャルママンと、呼べ!!!
0948デフォルトの名無しさん
2011/07/07(木) 03:01:27.07Unity は Mono っていう .NET クローンベースだけど、
Mono はかなりちゃんとしてるよ。
MS の支援も受けてやってるし。
というかさ、C# ってちゃんと標準化してるんだぜ?
その一方で、Java って実は標準化してない。
>>938
最近、純粋な意味でインタープリター(実行時にいちいち構文解析してる)なものとかないよ。
大体は実行時のどこかでネイティブ化して、その後はそのネイティブコード使い続ける。
0949デフォルトの名無しさん
2011/07/07(木) 03:05:38.16Windows で MS 実装の C# コンパイラーでコンパイルしたコードが、
Linux 上の Mono の VM でちゃんと動く。
基本ライブラリ程度しか使ってないものの場合で、動かなかったって話1度も聞いたことない。
一方で、WPF とか、GUI 回りはさすがに移植されてないんで動かない。
けどもまあ、Unity 使うならその辺りは関係ない話。
0950デフォルトの名無しさん
2011/07/07(木) 12:43:15.57呼び出し元プロジェクトのクラスを呼び出し先DLL の中でインスタンス化して、値をセットした上で呼び出し元に返す仕組みを考えています。
DLL 側へどのような情報を渡して、DLL 側でどのような処理を行えば実現出来るでしょうか。
元はプロジェクト内の1機能で、クラスのフルネームを渡してインスタンスを作成していたのですが、ネームスペースが変わったせいかインスタンス化出来なくなりました。
宜しくご教示下さい。
0951デフォルトの名無しさん
2011/07/07(木) 12:56:12.94あざっす。
かなりちゃんとしてますね。
UnrealUDKの独自言語でやってたのがハナクソに思えてきた・・・
0952デフォルトの名無しさん
2011/07/07(木) 13:11:14.620953デフォルトの名無しさん
2011/07/07(木) 13:14:44.53インターフェイスを使う
DLL側
interface IHoge { void SetHoge(int value); }
public void CreateHoge<T>() where T : new(), IHoge { var hoge = new T(); hoge.SetHoge(1234); return hoge; }
呼び出し側
class HogeImpl : IHoge { public void SetHoge(int value) { this.value = value; } }
HogeImpl hoge = CreateHogeを持ってるクラスのオブジェクト.CreateHoge<HogeImpl>();
0954デフォルトの名無しさん
2011/07/07(木) 13:22:38.600955953
2011/07/07(木) 13:23:03.02public interface IHoge
public T CreateHoge
0956950
2011/07/07(木) 17:56:45.01宜しくないですか、、、
インとアウトを分かりやすくしたかったんですが、そのぶん中身がごちゃごちゃになってしまいました。
>>953
なるほど、こうすれば外から与えたクラスをなかでインスタンス化したうえで弄って返却できますね。勉強になりました。
new 制約は最後に指定しなきゃダメって怒られたんでそこだけ並び替えました。
>>954
つまり呼び元からassemblyを渡してやれば今まで通りクラスのフルネームでやれますね。
と言うことで今回はこのやり方でいかせていただきました。
皆様、回答頂きありがとうございました。
0957デフォルトの名無しさん
2011/07/07(木) 18:05:51.440958デフォルトの名無しさん
2011/07/07(木) 21:30:13.53何を参考にしたらいいんだろうか・・・
0959デフォルトの名無しさん
2011/07/07(木) 22:26:31.950960デフォルトの名無しさん
2011/07/08(金) 09:56:45.03必要な部分を保護して他を延ばすだけだし、既存の技術の組み合わせだけで出来るだろ
0961デフォルトの名無しさん
2011/07/08(金) 10:05:46.43シームカビングはサンプルもいっぱいあるぞ
C++とかだけど変にクラスとか使ってないやつもあるから簡単にわかる
解説も詳しくされてるし
CとC++出来ない俺が作れたんだから大丈夫だ
0962デフォルトの名無しさん
2011/07/08(金) 10:54:58.84日本語で唯一と思われる本は全部書いて無い上、サンプルコードは使用してない変数だらけだし
0963デフォルトの名無しさん
2011/07/08(金) 11:26:52.52Whitespace とか Brainf*ck もマスターしたのか、すごいなw
0964デフォルトの名無しさん
2011/07/08(金) 12:11:58.340965デフォルトの名無しさん
2011/07/08(金) 12:14:57.96Dictionary<Dictionary<T, U>, V> ってやるか、
複合キークラスを作って Dictionary<Key, V>
(Key クラスはGetHashCodeとEqualsをオーバーライド)
0966デフォルトの名無しさん
2011/07/08(金) 13:28:18.74具体的にどうやって設計するのでしょうか?
0967デフォルトの名無しさん
2011/07/08(金) 13:30:22.60コード書きながら考える
0968デフォルトの名無しさん
2011/07/08(金) 13:31:15.18ありがとうございます
Tupleとかいうの使うんですかね?
やってみます
0969デフォルトの名無しさん
2011/07/08(金) 13:33:15.29それは、設計と言われて、仕様書みたいなのを想像しすぎ。
コード書きながらであっても、
どこでクラスを区切ろう、クラス名やメソッド名は何にしよう、どういう依存関係持たせよう
とかは設計の一部。
単に、最近のプログラミング言語が設計に関する能力も備えてるというだけ。
0970デフォルトの名無しさん
2011/07/08(金) 13:40:56.62基本的に、
エンドユーザーがどういう機能を求めてるのか洗い出し
→ (概念設計) それを基に、どういう技術使って作るか決めたり
大まかにモジュール区切る(C#で実装すると大体それがそのままクラスになる)
→ (実装設計) クラスとかメソッドの仕様決めてく
大規模開発だと概念レベルと実装が人も違う、会社も違うとかになるけど、
小規模だとたいてい同じ人がやる。
実際にプロトタイプのコード書きながら概念設計とかもざら。
0971デフォルトの名無しさん
2011/07/08(金) 13:48:02.010972デフォルトの名無しさん
2011/07/08(金) 13:50:47.620973デフォルトの名無しさん
2011/07/08(金) 13:51:36.49だいたいそういうこと。
そのとき、主語抜かないようにね。
アプリによっては、エンドユーザーって言っても、一般社員、管理者、役員とか分かれるんで。
誰なら何ができる/何をしたいを明記。
0974デフォルトの名無しさん
2011/07/08(金) 14:16:06.08クライアントへの詫び状でなければまだマシってもんさ
0975デフォルトの名無しさん
2011/07/08(金) 14:29:32.39ただ、これを素人に見せると「完成まで後少し」と思われてしまうので注意
0976デフォルトの名無しさん
2011/07/08(金) 14:37:26.94うちがそれだ
画面で着てるから後表示とか登録書くだけでしょ
あほかソレが時間かかるし入力チェックやエラー処理系はどこいったんだと
PCのセットアップもあるし
ただ動くだけでいいなら誰も苦労しねぇよ
0977デフォルトの名無しさん
2011/07/08(金) 14:41:04.800978デフォルトの名無しさん
2011/07/08(金) 14:42:48.93そのただ動くだけでいいっていうのがトラップw
0979デフォルトの名無しさん
2011/07/08(金) 14:47:26.18とりあえずボタンの内容を記述して、単純な動作の確認⇒完成したと思われる
他のボタンを押したりすると不具合発生⇒しっかりした物を作れと怒られる
いつも大体こんな感じ
0980デフォルトの名無しさん
2011/07/08(金) 14:53:09.540981デフォルトの名無しさん
2011/07/08(金) 14:54:54.030982デフォルトの名無しさん
2011/07/08(金) 14:56:27.38俺<出来ました
相手<機能多すぎて画面見辛いから、やっぱこの機能とこの機能はいらない
特に苦労した機能に限って、いらないって言われるんだよな・・・
0983デフォルトの名無しさん
2011/07/08(金) 15:05:11.100984デフォルトの名無しさん
2011/07/08(金) 15:12:33.310985デフォルトの名無しさん
2011/07/08(金) 15:13:39.07無理じゃね?
日本の場合「とりあえず動けばいいんだよ」という発言権持ってる人ってオールドタイプなのに
威張ってるだけってことが多いし
理解してる人はそういう発言はしない
0986デフォルトの名無しさん
2011/07/08(金) 15:18:09.800987デフォルトの名無しさん
2011/07/08(金) 15:18:46.58いらないと言われても金は請求できるだろ
0988デフォルトの名無しさん
2011/07/08(金) 15:23:51.68http://hibari.2ch.net/test/read.cgi/tech/1310106189/
0989デフォルトの名無しさん
2011/07/08(金) 15:50:04.340990デフォルトの名無しさん
2011/07/08(金) 17:24:46.55取扱説明書を仕様書と言われて困惑するタイプだろ
0991デフォルトの名無しさん
2011/07/08(金) 17:52:07.22どうでもいいネタでスレ埋めるなよ、カスども。
0992デフォルトの名無しさん
2011/07/08(金) 20:54:26.100993デフォルトの名無しさん
2011/07/08(金) 20:58:20.270994デフォルトの名無しさん
2011/07/08(金) 21:07:02.800995デフォルトの名無しさん
2011/07/08(金) 21:08:12.680996デフォルトの名無しさん
2011/07/08(金) 21:11:54.050997デフォルトの名無しさん
2011/07/08(金) 21:21:37.65ふらっとC#,C♯,C#(初心者用) Part77
http://hibari.2ch.net/test/read.cgi/tech/1310106189/
0998デフォルトの名無しさん
2011/07/08(金) 21:21:54.050999デフォルトの名無しさん
2011/07/08(金) 21:22:02.041000デフォルトの名無しさん
2011/07/08(金) 21:22:10.5010011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。