1 名前:デフォルトの名無しさん mailto:sage [2013/04/28(日) 17:27:19.70 ] エスケープシーケンスやWin32APIなどの環境依存なものでもOK。 ただしその場合、質問者は必ず環境を書きましょう。 ※sage禁止です(と代々スレに書いてありますが自己判断で)。 【前スレ】 【初心者歓迎】C/C++室 Ver.83【環境依存OK】 toro.2ch.net/test/read.cgi/tech/1363154865/ ◆ソースのインデントについて 半角空白やTABでのインデントはスレに貼ると無くなります。 そのため、アップローダーに上げるのも手ですが直接貼る場合は、 全角空白か に置換すると見栄えだけはよくなります。 【アップローダー】(質問が長い時はココ使うと便利) codepad.org/ (コンパイルもできるし出力結果も得られる[]privateをチェック) ideone.com/ (時間帯によってはcodepadが重い事があるのでここも利用)
2 名前:デフォルトの名無しさん mailto:sage [2013/04/28(日) 18:02:07.74 ] NG推奨:半角にして登録してくだい ◆QZaw55cn4c ◆0lBZNi.Q7evd /tech/1313183984/
3 名前:デフォルトの名無しさん mailto:sage [2013/04/28(日) 19:30:08.32 ] >>2 に追加 NG必須:半角にして登録してくだい hoge 片山
4 名前:デフォルトの名無しさん mailto:sage [2013/04/28(日) 20:25:38.66 ] hogeは日本の美しい表記です。それを否定するのは非国民
5 名前:デフォルトの名無しさん mailto:sage [2013/04/28(日) 21:29:44.13 ] HOGEってのはキモいウニユーザーの イメージがあるな。 奴らは一般人と会話するときにもHOGEを 使うから困ったものだ。
6 名前:デフォルトの名無しさん mailto:sage [2013/04/28(日) 21:39:25.63 ] 大昔、日常会話の中で「ピー syntax error!」と叫ぶ人がいた。 今は絶滅してると思う、たぶん。
7 名前:デフォルトの名無しさん mailto:sage [2013/04/28(日) 21:43:49.40 ] キュンキュンキュン! キュンキュンキュン! 私のハードディスクに記録しているのでありますっ☆
8 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 14:10:33.57 ] コンパイラ:gcc version 2.95.3 で int poll(struct pollfd *p, nfds_t nfds, int timout) { fd_set read, write, except; struct timeval tv; nfds_t i; int highfd, rval; ... と言うプログラムをコンパイルしたところ、 poll.c: In function `poll': poll.c:41: warning: declaration of `read' shadows global declaration poll.c:41: warning: declaration of `write' shadows global declaration という警告が出たのですが、 これってどういうときに出るのでしょうか? また、無視してよい物なのでしょうか?
9 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 14:15:44.74 ] >>8 もともとどこかでreadが宣言されてたけど オマエがreadを宣言しちゃったから オマエの方が優先されるけどいいんだな という警告と思われる
10 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 17:11:14.32 ] ゆとり世代のわがままっぷりが良く分かる
11 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 17:13:48.53 ] >>10 なぜそれを「ゆとり世代」とか「わがまま」と感じたのか興味あるね 単なる初心者の陥りやすい間違いという可能性は考えなかったのか?
12 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 17:35:24.41 ] >>11 幼稚園のお遊戯で白雪姫の役ができるのは「白雪姫の役をやりたい」と言った人全員 という世代なんだよ
13 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 17:37:39.23 ] >>8 お前、二歳くらいのとき 児童館で他人の玩具を奪い取ったことあるだろ?
14 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 17:48:27.02 ] >>12 皮肉も理解出来ないアスペか お前自身に「ゆとり世代」や「わがまま」の要素が強いから反応したんだよ 「投影」という現象だ
15 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 17:51:01.78 ] man read man write read, write って stdio.h 経由で宣言されちゃうのかしら?
16 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 18:05:57.74 ] >>14 いったい何を興奮してらっしゃる?
17 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 19:03:42.00 ] hoge厨が来たわけでもないんだから落ち着けお前ら
18 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 20:05:09.32 ] ゆとり世代より凄いのが新人類だよな 話を聞くとゆとり世代も完敗するぐらいゆとりだったみたい
19 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 21:41:37.65 ] 新人類って、長州力のアレか
20 名前:デフォルトの名無しさん mailto:sage [2013/04/29(月) 22:02:34.18 ] バカが見〜る〜♪ ブタのケ〜ツ♪
21 名前:デフォルトの名無しさん mailto:sage [2013/05/01(水) 01:45:31.29 ] hoge厨歓喜
22 名前:デフォルトの名無しさん mailto:sage [2013/05/01(水) 01:50:51.85 ] hoge厨とfoobar厨って、どっちがつおいの?
23 名前:デフォルトの名無しさん mailto:sage [2013/05/01(水) 03:26:24.54 ] >>22 さぁ、まともな神経してるのはfoobar厨だと思うけど、 まともな神経してれば強いというわけでもない 馬鹿は無敵だしな 基準を何にするかにもよるし とりあえず情報収集能力や判断力を基準にすればfoobar厨のほうが圧倒的に強い キチっぷりを基準にすればhoge厨のほうが圧倒的に強い
24 名前:デフォルトの名無しさん mailto:sage [2013/05/01(水) 20:49:45.04 ] とりあえずホゲユーザーは一般人と話すときに ホゲホゲのと言うのはやめた方がいい。 一般人に対しては「なになにの」と言うべき。
25 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 02:26:00.26 ] hoge厨よりhogeアンチ厨のがキモい
26 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 03:28:29.13 ] >>25 =キモいhoge厨
27 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 03:49:07.58 ] アンチhogeを最も効率よく怒らせた人が勝ちです さあ始め
28 名前:デフォルトの名無しさん mailto:sage [2013/05/02(木) 18:51:21.19 ] いつもこいつが荒らしてんのか
29 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 22:46:23.63 ] C++はシンタックスエラーがなかなか取り除けないな C++に遊ばれている
30 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 22:58:53.76 ] >>29 「basicなんちゃらクラスがうんたら」「インスタンシエートしました」「候補はこれじゃない?」とか参照絡みテンプレート絡みはほとんどわからない‥‥
31 名前:デフォルトの名無しさん mailto:sage [2013/05/03(金) 23:36:23.53 ] >>29 まあ腐っても言語だからね。 「C++はシンタックスエラーがなかなか取り除けないな C++に遊ばれている」 を>>29 が英訳した文をアメリカンに添削させたら 壮大な校正が入るだろう。 並大抵でないのは当然。
32 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 00:00:07.94 ] 「象は鼻が長い」
33 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 00:11:22.23 ] アンサイクロペディアでC++ページ見たことがある? あれ面白いから見てみたほうがいいよ
34 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 00:28:33.46 ] テンプレートとオーバーロードそれぞれはまぁ納得できる仕様なのだが、 組み合わせるとエラーの原因がさっぱりわからんものに。
35 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 00:41:17.75 ] hp.vector.co.jp/authors/VA000092/jokes/strup.html
36 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 14:39:45.42 ] [Mac/NUC] AGK / DarkBASIC / Basic4GL / 99BASIC 2013 Part.1 jbbs.livedoor.jp/bbs/read.cgi/computer/43761/1367197701/l100
37 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 22:22:34.27 ] NG推奨ワード: BASIC (半角で)
38 名前:デフォルトの名無しさん mailto:chorohage [2013/05/04(土) 22:45:24.09 ] ほら悔しいw
39 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 22:58:34.96 ] プログラム板で言語名をNGせざるを得ないという悲しみ
40 名前:デフォルトの名無しさん mailto:sage [2013/05/04(土) 23:01:08.37 ] B A S I C
41 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 02:37:09.67 ] >>39 リンク先のクソコテだけガードしておけばいいよ
42 名前:デフォルトの名無しさん mailto:sage [2013/05/05(日) 05:04:14.85 ] >>41 顔が引き攣ってるよw
43 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 02:16:13.16 ] 【初心者姦ゲイ】C/C++室 Ver.84【姦狂依存OK】
44 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 02:20:18.67 ] >>36 俺もBASICにしようっと
45 名前:デフォルトの名無しさん [2013/05/06(月) 13:39:34.42 ] C++のinline関数と通常の関数の違いを教えてください。
46 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:41:06.60 ] インライン関数は複数のソースに現れても 一つになります。以上
47 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:41:55.59 ] >>45 複数翻訳単位で繰り返し定義された場合、 inline でかつ内容がまったく同じであれば、それが許される。
48 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:50:15.71 ] inline関数の最大の特徴はインライン展開されること 複数のソースに現れるのが許されるのは二義的なこと
49 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:51:22.53 ] >>48 釣りとしてはイマイチだな
50 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 13:54:55.92 ] ヘッダに定義をかけることだろう 絶対に展開されるとは限らんし
51 名前:デフォルトの名無しさん [2013/05/06(月) 13:59:04.90 ] インライン展開がわかりません。 展開とは、そこにコーディングしたのと同じ、ということでしょうか?
52 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:00:59.61 ] 釣り呼ばわりとか(笑) inlineは本来的にはインライン展開を指示するものだろ 実際にインライン展開されるかどうかはコンパイラの最適化の問題であって本質的なものではない
53 名前:デフォルトの名無しさん [2013/05/06(月) 14:02:36.80 ] 釣りって言われたらそのまま受け取る奴って何なんだろうな ウザいから消えろってはっきり言われないと分からないのかな
54 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:04:01.91 ] ・関数の中身を展開し高速を図ろうぜ ・その性質上定義がヘッダーに書かれる必用があるな ・よし内部リンケージにしよう ・いや、それだといろいろまずい ・よし、ODRだ。複数ファイルでも実体は一つ ←1998年頃 ・もともと展開される保証は無いし、 展開判断はコンパイラに任せた方がよくね? ・じゃあ「インライン」の意味はおまけで 実際はODR対象の為のキーワードだな←今ココ
55 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:05:21.36 ] >>51 例外はあるけどそういう事 static変数の定義だけは例外で、 インライン展開されても変数は全ての箇所で共有される
56 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:06:07.50 ] >>52 inlineキーワードとinline関数は別物だぞ
57 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:08:36.45 ] >>53 お前が消えろよクズ
58 名前:デフォルトの名無しさん [2013/05/06(月) 14:09:07.11 ] 展開とは、inline関数で記述したことをそこにじか書きするのと 同じと考えていいでしょうか?
59 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:11:30.71 ] >>58 基本的にはそれで良いよ ただ本当にインライン展開されるかはコンパイラの判断によるということ >>56 inline関数の話をしてるのは明白だろ
60 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:14:18.23 ] >>59 いえ、inline関数の話をしているのに どうしてinlineキーワードの話にすり替えるのですか?
61 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:16:15.39 ] 元の質問者はトリップつけてくれよ
62 名前:デフォルトの名無しさん [2013/05/06(月) 14:24:37.55 ] >>59 さん サンクスです。
63 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 14:55:44.93 ] >>57 ,>>61 キチガイは早く他所に行ってね スレが荒れる原因になって迷惑です
64 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 15:15:29.74 ] > ウザいから消えろってはっきり言われないと分からないのかな ⇒ >>63
65 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 15:24:47.05 ] とりあえず>>48 の回答は不適切。 釣りかどうかはわかないが
66 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 15:33:08.41 ] 君が不適切と思うならそうなんだろうな。 君の中では。
67 名前:デフォルトの名無しさん [2013/05/06(月) 17:46:04.74 ] >>66 =精神異常
68 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:11:39.19 ] winsockでudpサーバを作ろうとしていますが、クライアントが何らかの信号を出さないと、サーバは誰が接続中でデータを配信しているか 分からないのでしょうか、acceptで接続するときの情報をとろうと実験したのですが、 それだとブロードキャストらしきものを拾って使えませんでした
69 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:21:06.43 ] udpで接続中とかは意味がわからないが、サーバがデータを受信したときに 送信元のIPアドレスは分かるだろう
70 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:34:03.68 ] 具体的にいうと動画データをudpで配信するサーバを作りたいのですが、配信してるクライアントの情報の取り方が分からないです
71 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:35:22.06 ] クライアントの情報とやらがなにを意味してるのか説明しないと
72 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:42:22.49 ] スレ違い
73 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:43:30.43 ] クライアントはipが取れればと思います
74 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:45:30.66 ] マルチキャストなら無理 ユニキャストならお前が知らないはずはない
75 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:50:26.38 ] うーん、それがudpという感じなんですね
76 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:54:46.67 ] >>75 消えろゴミ
77 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 18:58:48.33 ] とりあえず、ありがとうございました
78 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 19:56:44.10 ] >消えろゴミ → ありがとうございました マゾにもほどがある
79 名前:デフォルトの名無しさん mailto:sage [2013/05/06(月) 20:56:21.61 ] >>67 君の中ではそうなんだろうな (w
80 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 00:00:14.38 ] inlineの仕様は「通常の関数呼び出しするより 中身を展開する方が望ましい(prefer to)」 だからなあ。 ODRが主目的でないのは異論が無いと思うけど インライン展開されると言い切られるとちょっと違う。
81 名前:デフォルトの名無しさん mailto:sage [2013/05/07(火) 00:30:46.24 ] ほんとに展開されるかどうかはわからんもんね
82 名前:デフォルトの名無しさん mailto:sage [2013/05/08(水) 04:33:36.98 ] 多重継承は正義だったのでしょうか?
83 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 13:04:34.68 ] DMC8.56で、_beginthreadexの呼び出しで死ぬんだがどうすれば良い? 以下コード #define _MT #include <windows.h> #include <process.h> unsigned __stdcall f(void* a) { _endthreadex(0); return 0; } int main() { HANDLE hth=(HANDLE)_beginthreadex(NULL,0,f,NULL,0,NULL); return 0; }
84 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 13:26:24.36 ] 最後の引数が間違ってるからじゃね?
85 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 14:55:06.54 ] VCだとNULLで通るんだがなぁ unsigned tid=GetCurrentThreadId(); HANDLE hth=(HANDLE)_beginthreadex(NULL,0,f,NULL,0,&tid); これで通った ありがとう
86 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 15:33:44.54 ] MSDNによると最後の引数はNULLでも良いはずなんだがな??? あと、そのGetCurrentThreadId()呼び出しは要らない筈
87 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 16:27:58.44 ] ?
88 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 16:49:53.27 ] ああ、最後の引数は関数の返値か。 GetCurrentThreadId()なくても通った。 実装時期が分からないけど、VC6のだとNULLでいいとは書いてないんだな。 平気でNULLにしてたけど。 まあ、DMCだから。
89 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 17:44:56.19 ] 昔はVisual C++でもダメだったので ダミーで用意した変数のアドレス渡してた。 ソースは俺
90 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 19:56:20.98 ] 少なくともリファレンス上は 2003までNULL不可、2005から許容
91 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:17:46.00 ] APIじゃなくてランタイムライブラリなら仕様が変わってもおかしくない だがDMCは10年くらい前で止まってるんじゃないか 今さらDMCを使うくらいなら DMDの方がいいw
92 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 21:21:23.38 ] Digital Mars何ソレうまいの?
93 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 23:36:30.87 ] 俺はDMMを利用してる
94 名前:デフォルトの名無しさん mailto:sage [2013/05/10(金) 11:04:50.50 ] 今のdmc遊べるよ? tgmath.h以外のC99で追加されたヘッダファイルあるし 関数も大体揃ってる windows依存部分は10年放置だけどw
95 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 10:30:02.96 ] >>94 >tgmath.h以外の 何なのその中途半端。 Win32 API使わないならclangでも挿れた方がマシ
96 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 18:16:13.62 ] いやいや、C99 ってオイ C++03かと思って納得しかけたじゃないかw
97 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 19:19:20.18 ] あのさ、VS2012ですらC99に対応してないんだから、C99を中心に語るのはやめてくんない? gcc(完全準拠じゃない)とIntel C++(これも完全準拠じゃない)は対応してるけどさ
98 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 19:42:38.93 ] >>97 14年前の規格すら対応していない KUSOコンパイラを君が使っていると いう理由で 他人に変なこと要求しないでくれ。 Cだって2011年に改訂されてるんだから 2世代前の23年前の仕様で物を語られても困る。
99 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 19:47:33.89 ] >>98 VS2012を捨ててgccを使えと?仕事で使ってるので無理です
100 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 19:52:49.13 ] >>99 ここはVisual C++スレではないので、Visual C++前提で 話をするのは止めて下さい
101 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 19:55:04.24 ] >>100 じゃあこのスレは何のコンパイラを使ってる人のスレなの?そこをはっきりさせてよ >>1 にも書いてないじゃん
102 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 19:56:03.55 ] 環境依存おkなんだからどんなコンパイラだろうがいいだろ
103 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 19:57:30.47 ] >>102 そうかわかった まあgccはEclipse CDT入れてるからいいけどさ
104 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:00:35.28 ] >>101 環境を述べた上であれば環境固有の話をしてもいいスレです。 Visual C++と説明した上でC90の話をすることは構いませんが 話の前提をVisual C++の低スペックに合わせる不自由を 他人に要求しないでください
105 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:03:23.82 ] VS2012が低スペックだと・・・?
106 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:03:48.04 ] もろちん
107 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:13:39.14 ] >>105 1990年仕様のままで 1999,2011の2回の改訂に 全く追従してないからな。 Cについては化石だろ?
108 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:19:31.69 ] msとしてはC++使えってスタンスだからな しゃあない
109 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:20:21.64 ] gccとかclangの方がマシとは
110 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:38:59.38 ] ウンコVCにはハーブサッター氏も困っている herbsutter.com/2012/05/03/reader-qa-what-about-vc-and-c99/
111 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:44:37.15 ] でもMSってClangに興味を持って秘かに取り入れようとしてるんでしょ?SP2位で入れて来たりして
112 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:47:47.88 ] >>111 4月に出たうぷだて2には入っていませんでしたよ
113 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:53:30.93 ] >>111 半年の短期採用でどうにかなるもんじゃないだろ
114 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 20:56:43.58 ] という事は次期バージョンか、それとも有償プラグインかよ
115 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:04:25.96 ] >>99 いまやVC使っている奴よりGCCが圧倒的に多いだろ VC捨ててGCCにする
116 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:06:19.35 ] >>115 winの仕事でgccって、オマエばかなの?
117 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:12:17.68 ] バカなんだろう
118 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:24:24.62 ] GPLで仕事か 羨ましい(笑)
119 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:31:12.46 ] でも、Visual C++ってC++11のサポートすら中途半端な低スペックだからな 低スペックな奴は低スペックなのが良いのかもな
120 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:46:58.52 ] 企業が開発する有償のコンパイラが 2011年9月の規格を2012年に完全に 盛り込むのは難しいだろう。 VC6の時は規格制定から約3ヶ月後の 出荷だったし、不幸なコンパイラだな。
121 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:50:54.04 ] VC++は「みんな使ってるから安心」が最大のメリットなんだよ。 最新規格を追い求める向きはそういう製品をどうぞ。
122 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 21:57:47.19 ] >>120 細かいことだが前後が逆だぜ Visual C++ 6.0: 1998年6月 C++第一版: 1998年9月 ---おまけ 1999年 C改訂 2002年 Visual C++ .NETでスルー 2003年 Visual C++ .NET 2003もスルー 2005年 Visual C++ 2005もスルー 2008年 Visual C++ 2008もスルー 2010年 Visual C++ 2010もスルー 2011年 C改訂 2012年 Visual C++ 2012またもやスルー
123 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 22:01:04.11 ] vc糞過ぎる
124 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 22:23:51.36 ] みんなって言うか、少数民族がじゃない
125 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 22:27:03.20 ] >>124 仕事の話を趣味の話にすり替えないでください
126 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 23:43:30.87 ] 趣味ならともかく仕事の話ってなると小数派になるんじゃない? 組み込み屋もC/C++使っているんだから で、MSはいまやあんまりVCに力入れてないように感じるんだけど
127 名前:デフォルトの名無しさん mailto:sage [2013/05/11(土) 23:45:28.77 ] まるで職業プログラマが全て組み込み屋みたいな言い方だね。
128 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 00:07:31.06 ] >>126 なんか明後日の方向には力入れてる。 C++/CLIとかC++/CXとかなんかもう訳分からんw
129 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 00:28:04.87 ] >>126 .NETの時代でしょー SQL Server + .NETは超楽じゃん
130 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 00:56:56.72 ] 仕様策定者がレファレンス実装を出さないのが悪い
131 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 01:01:02.49 ] >>128 C++の進化が亀過ぎで、自社で拡張しないといけないんだろう MS的にはC++にしがみつくのは止めてねって感じかな Win職業プログラマはMSの導きに従わないと、だんだん食いぱっくれるかも
132 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 09:41:38.56 ] >>130 参照実装と言えば、 C99のジェネリックって_Genericも無しに どうやって実現すんだ?と思ってヘッダーを覗いたら ウンコな実装で拍子抜けしたでござる
133 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 10:46:52.82 ] インターフェースがしっかりしててそれなりに動けばいいの コンパイラ屋のモチベは下がるかも知れんけどw
134 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 11:31:36.35 ] C99の似非ジェネリックなんていらねーよ C#のジェネリックの方がよほど使える というかさすがにスレ違いか
135 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 11:37:31.51 ] そこでどうしてC++とかC11でなく C#になったのた不思議。 第一、Cのジェネリックに対応するC#の仕様は ジェネリクスでなくオーバーロード。
136 名前:デフォルトの名無しさん mailto:sage [2013/05/12(日) 11:44:39.61 ] C#のジェネリックはC++のテンプレートとは全然違うんだぜという話をしようとしたが、 これはするとしたらC#スレで話するわ
137 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 21:28:49.53 ] むしろどう違うととらえてていたのか気になる ・C#では(クラス型は)物理的なインスタンスが一つ。 つまりオーバーロードの解決はコンパイル時 ・そのためTが満たすべき条件をC#では基本クラスで指定 一方C++はコンセプトLite検討中? ・そのためC#は特殊化が原則無い ・でも倫理的なインスタンスの型情報(Tが何型か)は持っている ・C++は型以外の値そのものをパラメーターに指定可 使い勝手はあんまり変わらないような。 仕組み的にはC#は基本クラスの型を使って 実行時解決できるレベルの汎用化だけど C++はコンパイル時に全てが決まるメタプログラミング って点かな。。
138 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 22:44:27.60 ] 今から勉強しようと思いますが CよりC++を学んだ方が良いのでしょうか? 一通り使いこなせるようになるまで それぞれどの程度かかりますか?
139 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 22:55:17.03 ] Javaでクラスとインタフェースを学んで Cでどれほど危険なプログラムが組めるかを学んで C++を学ぶのがいいと思うよ。
140 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 23:00:19.79 ] Javaを先にやると、Cのありがたみが わからずに 「なんで何のチェックも無しに落ちるんだ」 「コンパイルエラーメッセージが意味不明」 「おまじない大杉」 などとクソ認定される恐れが大。
141 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 23:02:35.68 ] 初学者は色々と不便な環境を経験しておいた方が 色々と気をつけるようになるのではないかと思う事はある
142 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 23:28:19.74 ] むしろ特定分野を狙うわけでもないのに CやC++を勉強するのが無駄。 「ワシらは紙に穴をあけて…」と史実を 語られるレベル
143 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 23:41:26.11 ] ディップスイッチパチパチの人も 時々は思い出してあげて
144 名前:デフォルトの名無しさん mailto:sage [2013/05/13(月) 23:53:03.96 ] よしじゃあCの前にまずPL/Iだな
145 名前:デフォルトの名無しさん mailto:sage [2013/05/14(火) 07:55:35.04 ] PL/Mとどう違うの?
146 名前:デフォルトの名無しさん mailto:sage [2013/05/14(火) 08:53:40.29 ] PL/Mは整数しか扱えんぞ
147 名前:デフォルトの名無しさん mailto:sage [2013/05/14(火) 09:30:49.06 ] 唐突なんだが、ヘッダファイルの拡張子はテンプレートクラスを含む時が.hppで、それ以外が.hだと 思ってたんだけど、先日C++のヘッダファイルは全部.hppにするのが業界標準だよって言われた。 業界が何を指してるのかイマイチよく分からなかったんだが(てか、サッパリ分からなかったんだがw) 実際どうなんですか?
148 名前:デフォルトの名無しさん mailto:sage [2013/05/14(火) 12:02:03.60 ] Boost信者はhppを好む。 業界標準化と言われると微妙だな。
149 名前:デフォルトの名無しさん mailto:sage [2013/05/14(火) 12:22:51.02 ] 何処の業界かは知らないけど拡張子なんて飾りだよ
150 名前:デフォルトの名無しさん mailto:sage [2013/05/14(火) 12:29:56.11 ] 業界標準かどうかは知らないけど Cコンパイラでコンパイルすることを(実際にできるできないにかかわらず)全く考慮してないならhppにする また拡張子だけ見て強調や補間のモードを変更するエディタとかあるからhppにしといたほうが便利なときもある
151 名前:デフォルトの名無しさん mailto:sage [2013/05/14(火) 19:44:39.78 ] .hppでも.hでもいいから混在はやめてほしい。 業界標準だよと言われたら「お前の中ではな」 と思っておけばいい。
152 名前:デフォルトの名無しさん mailto:age [2013/05/15(水) 12:29:19.47 ] 派生クラスを複数生成したら 基底クラスも複数生成されるの? 基底クラスは1つ?
153 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 12:37:12.77 ] はい
154 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 12:59:43.87 ] いやどっちだよw
155 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 13:09:10.74 ] もう少し明確にしてくれ。クラスの定義の話かインスタンスの話か?
156 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 15:56:34.22 ] クラスの定義が複数生成されるとか嫌過ぎるわ…構文上の規約の問題とメモリの割り当ての理解がごっちゃになってる hppってヘッダーにcppのコード突っ込んでリンカ解決やら楽しようぜ h+cpp だから hpp だカッコいいだろう!! みたいなイメージだ
157 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 17:58:27.63 ] >>152 クラスのインスタンスを人間にたとえると 基底クラスの顔と派生クラスの顔 つまり2つの顔を持つ人間が1人生まれる
158 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 17:58:48.01 ] 「クラスを生成」はたいていの場合、 発言者は「クラスのインスタンスを 生成」のつもりであることが多い。なので 派生クラスのインスタンスを複数生成したら それぞれに基底クラスのインスタンスが含まれる
159 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 18:04:20.08 ] 自己顕示欲マンセー
160 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 18:17:38.64 ] 複数の翻訳単位で派生クラス(テンプレートクラス)がインスタンスされた場合、 それぞれの翻訳単位で基底クラスが暗黙にインスタンス化される。 だがODRで一つと見なされるのでインスタンスの数を意識する必要はない。 コンパイル時間を短縮したいならexternでインスタンス化を抑制する
161 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 18:44:10.49 ] 基底クラスだけテンプレートを インスタンス化できる? 派生クラスのインスタンス化に 必要不可欠のような
162 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 19:49:38.87 ] 基本クラスだけ? 逆?
163 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:00:26.86 ] 最近hoge厨が静かになって 平穏がおとずれたようだ
164 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:03:42.01 ] 自治スレか宿題スレに篭っているんでしょう平和が続くといいですね
165 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:10:12.64 ] hoge使いはUnixerに多い。 つまりUnixerは底辺。 msは底辺以下、 coolなguyはMacを選ぶね
166 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:28:03.36 ] Macは負け組
167 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:30:00.84 ] foo bar は?
168 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:33:57.17 ] Linux:キチガイ、変人が使う MS:馬鹿が使う 林檎:自称かっこいい奴が使う 林檎は芸術家jobsの芸術作品だからな
169 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:35:44.05 ] どちらかというとマカーに基地外が多い 何でかわからないけどマカーの基地外率は異常
170 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:42:27.85 ] 継承関係が A -> AA -> AAA の時にAAAのインスタンスを 生成するとAAとAのインスタンスも(見えないけど)生成される。 じゃないとスーパークラスのメソッドを呼び出せない。
171 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:42:53.09 ] >>169 馬鹿が自称かっこいい奴を見てキチガイいって思うのは 馬鹿だからしょうがない
172 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:47:16.94 ] >>152 は多重継承の話をしてるんじゃないの?
173 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:55:25.05 ] Aを継承したB Aを継承したC BとCを継承したD Dのインスタンス中に居るAのインスタンスは単一なのか BにまつわるAのインスタンスと CにまつわるAのインスタンスとの都合2つに分かれるのか こういう話?
174 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 20:56:46.04 ] 152の味噌汁
175 名前:152 [2013/05/15(水) 21:19:55.15 ] インスタンスを生成でお願いします
176 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 22:54:57.47 ] >>175 派生クラスのインスタンスの数に応じて基底クラスのインスタンスも複数生成される struct X { int a; }; struct Y : X {}; Y y1; Y y2; のとき y1.a と y2.a は別物
177 名前:デフォルトの名無しさん mailto:sage [2013/05/15(水) 23:02:17.63 ] つまんねっ
178 名前:152 [2013/05/15(水) 23:52:15.81 ] すいません書き直します 基底クラスAがあり、そのAの派生クラスBがあり Bのインスタンスを何度も生成した場合 B1とB2の基底クラスインスタンスAは A単体なのかA1、A2と増えていくのかどちらですか?
179 名前:片山博文MZパンク ◆0lBZNi.Q7evd [2013/05/16(木) 00:00:10.27 ] >>178 後者
180 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 00:17:06.64 ] B1とB2はいったいどこから出てきたんだ 基底クラスインスタンスなんてわけわからん語を作るな コードを書いて説明しろ
181 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 00:18:53.86 ] こういうのが説明力がないっていうんだよな 会社で煙たがられる存在
182 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 00:20:36.18 ] 基底クラスインスタンスのメンバ変数を書き換えるようなメソッドを用意して実験したらいいんじゃないかな(エスパー)
183 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 01:01:07.62 ] インスタンスの数=newした数(Java風) だから顔の数じゃなくてボディの数で数えろと
184 名前:デフォルトの名無しさん [2013/05/16(木) 01:46:42.40 ] >>180 何度も生成するから 1、2、3、4、5… と増えていくんだよ
185 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 07:19:43.02 ] 単体なのか増えていくのか、 質問するより、自分でコード書いた方が早いだろ
186 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 09:52:49.32 ] こういうのは入門書でよくやる理解しやすいたとえ話でやるより コード貼ってどうこうしたほうが…そもそも自作自演っぽく思えてきたけど
187 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 11:35:44.57 ] たしかにQZはC++の知識がないから QZの自演ってことはありうる
188 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 12:25:09.68 ] >>178 結局何を聞きたいのかさっぱりだ
189 名前:デフォルトの名無しさん [2013/05/16(木) 12:34:47.33 ] 派生を生成するために 基底のインスタンスも増えていったらメモリの無駄じゃないの?
190 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 12:38:06.02 ] >>189 だったら派生せずに新しくクラスを作ればいいじゃん
191 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 12:38:42.93 ] >>189 派生のインスタンスの中に基底のインスタンスに相当する部分が含まれているのでは?
192 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 12:40:31.09 ] 継承を一体何だと思ってんだか
193 名前:デフォルトの名無しさん [2013/05/16(木) 12:46:03.41 ] 派生を複数生成しても 基底は1つになる方法はない?
194 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 12:48:54.89 ] なんか意味を正しく理解してないのがいそうだからこの流れでは『インスタンス』禁止にしとけ クラスTのインスタンス -> T型の変数 と言い換えとけ
195 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 13:19:11.46 ] >>193 継承を使わずに基底にあたる型をshared_ptrとかでメンバに持つクラスにしろ
196 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 13:25:38.02 ] >>193 virtual継承
197 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 13:38:48.28 ] >>193 is-aとhas-aの違いはわかる?
198 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 15:53:31.31 ] 学生は人である 学生を増やしても人のインスタンスが一つになっている状況とは如何に あれか、学生数の水増しかw
199 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 16:17:39.82 ] >>193 の中では継承はどういうイメージになってるんだ?
200 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 17:01:59.23 ] >>193 派生を使わない。 基本クラスに持たせようとしていた情報は グローバル変数で持つ。 派生クラスに持たせようとしていた情報は単独の クラスにして みんなでグローバル変数をみる
201 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 17:04:43.82 ] >>193 コンポジションを使うとか どうしても継承が必要なのか、継承を使わなくてもいいのかはよく検討すべき
202 名前:デフォルトの名無しさん mailto:sage [2013/05/16(木) 18:30:51.59 ] もうAとBとB1とB2を全部 グローバル変数にしようぜ
203 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 01:01:04.77 ] 1.const char* a //*aがconst 2.char* const b //bがconst 3.char const* c //1.と同じ?2.と同じ? 4.const char& d //dがconst? 5.char& const e //どこがconst? 6.char const& f //ドカーン! constが分からんとですorz
204 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 01:02:41.45 ] >>203 何故自分で試そうとしないのですか?
205 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 01:11:23.80 ] >>203 これ見てわからなかったらもう来るなよミジンコ ideone.com/ViHQJy
206 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 01:41:05.07 ] くぎゅうぅぅ
207 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 01:47:27.57 ] >>203 とりあえずconstは(変数ではなく)型に付くと覚えましょう 1.const char* a //const char型へのポインタ(型)(の変数)a 2.char* const b //char型へのconstポインタ(型)(の変数)b 3.char const* c //1.と同じ 4.const char& d //const char型への参照(型)(の変数)d (※) (※この形を『const参照』と呼びますがconst型への参照(型)の意味であって、型へのconst参照(型)の意味ではありません) 5.char& const e //エラー 6.char const& f //4.と同じ
208 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 02:03:39.74 ] constは左隣につく、左側がない場合のみ、例外として右側につく、と覚えてる
209 名前:KUSO KOTE mailto:sage [2013/05/17(金) 02:15:00.69 ] 昔「エキスパートCプログラミング 知られざるCの深層」 というおUNKOな本があって、 型宣言の説明だけは素晴らしかった。 その読解法によると const char* a a is a pointer to "const char" char* const b b is a const pointer to char char const* c c is a pointer to const char (=a) const char& d d is a reference to "const char" char& const e e is a const reference to char→エラー char const& f f is a reference to const char
210 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 07:20:10.83 ] >>203 1, 4 は例外的だし意味もあいまいだから「使わない」
211 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 07:40:06.86 ] >>210 それぞれ3と6を使うってこと? それならむしろ自分は逆だなあ。
212 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 08:52:28.92 ] char const* a は const *a だから、*a がコンスト char* const a は const a だから、a がコンスト って考えると、3, 6は確かに自然な気がする でも、char const& a は const &a だから、&aがコンストかっていうと 何それイミフw って考えると、全然自然じゃない気もする。
213 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 09:12:40.30 ] constは ・左側で一番近い ・型に付いて 修飾するというのが基本ルール >>203 の1,4はその基本ルールでは解釈できず>>208 ,210のいうように例外的に解釈しなければならないから不自然 >>212 はconstが右側の、型ではない*aやaや&aに付いてる、という解釈の時点で最初から二重に間違ってる
214 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 10:15:43.42 ] なるほどなー。 自分は1,4を使う派だけど、constをどちらの目的で使うかによって、 型名とconstの位置が逆になるので、パッと見て分かりやすいかなー?と思っている。
215 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 10:49:49.41 ] >>213 なるほど、てことは const の左側に「が」を補って char const* は char が const char* const は char* が const char const& は char が const char& const は char& が constはイミフだからエラー って考えると自然?
216 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 12:03:02.39 ] そんなかんじでいいんじゃない
217 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 12:43:38.38 ] 左側にconstは記憶域指定子(static,extern,...)付きの宣言とぱっと見同じ読み方で解釈できて const初見の人でも受け入れやすい形だから便宜的に導入された記法なのかな int a; // int static int a; // なにかついてるけどint extern int a; // なにかついてるけどint const int a; // なにかついてるけどint int const a; // なにかついてるけどconst、・・・?
218 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 12:46:15.89 ] >・左側で一番近い 規格の該当個所はよ
219 名前:KUSO KOTE mailto:sage [2013/05/17(金) 15:03:07.06 ] >>217 記憶域指定子は別に左でなくても良いのだけれど ideone.com/k9Lxqm
220 名前:KUSO KOTE mailto:sage [2013/05/17(金) 15:12:14.57 ] URL間違えたoops ideone.com/PAlXVV
221 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 15:19:59.33 ] msdn.microsoft.com/ja-jp/library/1b4az623.aspx stringを取得する関数ってこれみたいに参照渡ししてることが多いけど、stringをreturnで返したら駄目なの?
222 名前:KUSO KOTE mailto:sage [2013/05/17(金) 15:31:43.27 ] >>221 昔は右辺値参照が無かったから コピーのオーバーヘッドを避けるために 参照にしていたと思われる。
223 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 15:47:36.06 ] やはりマイクロソフトの設計思想かな マイクロソフトは昔から関数を inに対してoutを与えるものでなく 「正否のステータスを返せるサブルーチン」 ととらえているところがある。 だから戻り値は参照渡しで受け取る
224 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 15:50:21.95 ] >>221 C++の.NET拡張はスレ違い
225 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 16:13:49.70 ] >>224 221はただの例示で本題はstd::stringだからな?
226 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 16:22:45.99 ] C++の文字列はJavaみたいはimmutable じゃないからねえ。 わざわざインスタンスを生成するより 使い回す方が自然。
227 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 19:52:53.57 ] 今回のconstもだけど、テンプレートやポインタ等の型を コンパイラはどのように構文解析して型を決めるんだ?
228 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 22:10:02.07 ] その状況で構文規則的にありえる構文候補を列挙してソースとマッチするものに絞り込んでいくんだがそういう話でなく?
229 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 22:14:50.72 ] *で区切られると覚えれば 別に左とか右とかそんなのどうでもいいんだよ
230 名前:KUSO KOTE mailto:sage [2013/05/17(金) 22:20:16.28 ] >>227 1.明らかにシンボル名と思われる所を見つける 2-1.すぐ右に()があれば関数 2-2.すぐ右に[]があれば配列 2-3.すぐ左に&があれば参照 2-4.すぐ左に*または*constがあればポインターまたはconstなポインター 2-5.すぐ左に「型」または「型 const」または「const 型」があれば終わり 3.その 関数の戻り値/配列の要素/参照先/ポインターの差すものは… →2-1に戻って解析を続ける ただし途中に記憶指定子とか入るので適当にがんばる
231 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 22:29:30.64 ] くそみそ
232 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 22:58:32.42 ] "const"は型の前と後のどちらに置いたほうがよいですか www.libjingu.jp/trans/bs_faq2-j.html#constplacement
233 名前:デフォルトの名無しさん mailto:sage [2013/05/17(金) 23:02:15.59 ] 日本語でも英語でも修飾子や形容詞は名詞の前にあったほうが読みやすいってことか
234 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 00:27:47.88 ] 欧米人には>>209 のC/C++表記だとすぐにそのように解釈できるのかな 同様にC/C++の型表記も自然な表記って感じるのか 俺的には、配列は int arr[10]じゃなく int[10] arrがいいだろって 初めのころは思っていたからな。
235 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 00:38:49.32 ] Cの文法がint[] a でなくint a[]なのは 使う時の書き方に似せるという 方針だったはず。 だがC++で参照&が登場した際に一貫性を失った。 ハゲは臭いものにフタをするタイプだから 整合性を考えなくて困る。
236 名前:KUSO KOTE mailto:sage [2013/05/18(土) 01:15:59.31 ] >>235 宣言と使用の記述の統一ついては ISO/IEC 9899:1990の時点で既に 宣言 void (*pf)() = f; 使用1 pf(); 使用2 (********pf)(); とか怪しかったような。
237 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 01:31:31.65 ] そんなことよりC#でやろうぜ 文法キモイ言語はポイしなさいポイ
238 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 08:04:30.10 ] 規格の何番の何ページという話は 規格オタ隔離スレでも作ってそこでやれ 初心者スレなんだよここは
239 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 09:20:03.56 ] >>238 いやそのりくつはおかしい
240 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 10:14:01.38 ] 有識者が初心者に正しい使用を教える ってよりは、 俺こんなに規格読み込んでるゼーっていう、 自己顕示欲旺盛な人たち同士の会話で、 初心者置いてけぼりなふいんきが 感じられる。
241 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 15:22:32.62 ] >>237 C#で済むプログラムしか作らないなら黙ってC#使えばいいんだよ お前がこのスレに居ることが全くの無駄
242 名前:デフォルトの名無しさん mailto:sage [2013/05/18(土) 15:32:38.93 ] >C#で済む この言い回しが勘違いも甚だしい。 「CはC#よりすごいんだ!」的な 自分の中で自分の価値を高めようと 必死なのがよくわかる。
243 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 00:45:26.82 ] Cのが速いんだから当たり前
244 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 00:52:59.09 ] .NET FrameworkのJITコンパイラの質がどんどん向上してスピードが上がってるんだが セキュリティの更新だけだと思ってるのか?
245 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 00:59:54.36 ] より低級な部分の処理には(ryですね、分かります
246 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 01:14:04.19 ] そのうちアセンブラを追い越す性能になるかもなw
247 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 01:17:53.99 ] >>246 アセンブラ直接弄ると、小数の丸め処理まで制御できるからな…… コンパイラがどこまで解釈できるかの勝負
248 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 01:41:00.42 ] >>244 それでもC/C++に比べりゃゴミみたいなもんだよ
249 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 02:06:25.95 ] 書き手の技量次第でFAではあるが、平均的なプログラマを前提にすると 手書きアセンブラと今時のC/C++コンパイラってどっちが速いか微妙じゃね?
250 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 02:11:20.47 ] アセンブラにしたって速度が要求されるコアな部分だけ使うのが 本来の使い方だからね。
251 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 02:17:33.53 ] ぷっ
252 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 05:05:15.33 ] 速度って言うけどさあ 細かい動的メモリ確保が 壊滅的におそいじゃんC/C++は。 そういうのを自前でメモリ管理すると 圧倒的に速くはなるんだが VM系のnewの代替としては限界がある。
253 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 06:49:35.08 ] え?malloc freeやら new deleteがめちゃくちゃ遅いってこと? そんな話聞いたことがないが
254 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 06:49:49.29 ] >>252 そういうのは自分でなんとかするものだ
255 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:39:02.23 ] >>253 mallocは明らかに遅いだろう
256 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:44:57.58 ] なにと比べて?
257 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:50:20.62 ] いや、普通の関数呼び出しとか 浮動小数点数演算とか ポインターアクセスとか 自動変数のメモリ確保と比べて
258 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:51:08.31 ] 中でリニアサーチを始めてると聞いた
259 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:52:19.07 ] 当たり前だろう ヒープを利用するのはそれだけのコストを払っても便利だからなのでは?
260 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:53:22.13 ] >>258 二分木にして適切にサーチする実装くらいあるだろう
261 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:53:54.40 ] >>259 多言語との比較の話を Cのメモリ確保方法の話に すり替えないでください
262 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:55:33.29 ] 他の言語だと早いのか?
263 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 07:56:16.70 ] 1秒間に100万回ループする所では mallocの使用はためらわれるけど Javaならまあ大きな問題はなかろう
264 名前:KUSO KOTE mailto:sage [2013/05/19(日) 08:03:58.39 ] さすがに100満開はかなり厳しいぞよ。 でも体感でJava/C#のnewはC++のnewより100倍は高速かな。 後でまとめて別スレッドでGCするんだから 解放時間入れてもスループットは高いだろう。 スループットだけは。
265 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 08:06:31.49 ] でもOSのカーネルじゃ使い物にならないよね(プゲラ
266 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 08:09:02.71 ] コンテキストスイッチしようとしたら ゴミがゴミ整理しようとして 5000マイクロ秒 待たされちゃいました。てへ
267 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 08:20:33.29 ] >>262 ガベコレ系の言語は C/C++の自動変数の代わりに newする設計なのでそれなりに速いよ ただ適材適所というか、やっぱり CPU演算メインな処理は C系じゃなきゃね
268 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 08:39:56.90 ] たしかに、すべての変数がnewで確保されるのだから Cのように100ナノ秒ちかくかかっていたら使いものに なってないっていう
269 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 09:03:42.10 ] でもJava/C# は C/C++ に比べて何を省略したからスピードアップを図ることができたの? GC があろうとなかろうとアロケーションという点では同じだとおもうんだけれど
270 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 09:11:39.60 ] コンパイル時になんでもかんでもしようとしないからじゃね
271 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 09:21:52.31 ] >>269 マイクロソフトのドキュメントには 「ガベコレ用スタックポインターをずらすだけなので高速です」 と書いてあったような。 つまり確保する領域の中に 「後でそれだけでガベコレできる情報」 を埋め込んでいることになる。詳細は不明
272 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 09:26:03.10 ] www.google.co.jp/search?q=C%2B%2B+Java+allocation+performance
273 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 09:40:50.19 ] >new Byte[1024] Cが速いという結果を得るための設定ですね? しかもJava1.5って、Sunが.NETを参考に GCを改良する前のやつ?
274 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 09:54:40.89 ] >>252 .NET のメモリ確保は0埋めするから壊滅的に重いじゃねーか
275 名前:KUSO KOTE mailto:sage [2013/05/19(日) 10:16:56.51 ] >>274 実測して比較しようじゃないか ideone.com/s6pjNN
276 名前:KUSO KOTE mailto:sage [2013/05/19(日) 10:23:30.46 ] すまん間違えた microseconds→milliseconds C#あんま速くなかったわ
277 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 10:26:43.12 ] C#は配列確保がクソ重いからメモリプールしてるわ
278 名前:KUSO KOTE mailto:sage [2013/05/19(日) 10:28:11.15 ] ちなみに俺の環境では C++:150マイクロ秒 C#:0.15マイクロ秒
279 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 10:43:14.88 ] >>278 それ、 >>276 の間違いは直して出してるの?
280 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 10:50:21.93 ] コンパイラによっては内部実装がdlmallocになって、 昔よりかは高速になったって聞いたけど
281 名前:KUSO KOTE mailto:sage [2013/05/19(日) 11:03:34.06 ] >>279 直してるつもりなんだけど あんまりVC++2012が遅いので不安になってきた。。 できれば誰か他の人、試して ↓修正版 ideone.com/r56YkM
282 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:06:57.53 ] そりゃそんな細かいメモリ確保したら遅いのは当たり前だわ 流石にそういうのは .NET に分があるのは間違いない
283 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:15:58.40 ] つまりC++の細かいメモリ確保は Java/C#より千倍遅いとふむふむ
284 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:25:34.32 ] C++とC#でNが違うだろ>>281 のソース
285 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:26:54.20 ] C++でもアロケータ自作で乗り切れるが そもそもそんな細かいnewを何度も行うケースは稀だから 意味の無い比較だな
286 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:28:49.49 ] boost::poolをいろいろ使ってみるとか 種類があるから
287 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:30:52.81 ] 最適化はやってるんだよね? 確かVCはデバッグ用だといろんな情報を埋め込んでて遅くなったと思うけど
288 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:33:49.10 ] >>284 平均する時に割ってるからいいじゃん むしろ速すぎて100倍しないと 測れなかったんだろ(プ >>287 最適化してなかったら死刑だなw
289 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:40:00.45 ] ideoneは最適化しなかったような
290 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:41:23.84 ] エクスプローラへのD&Dを試してみてるんだけど、何故か遅い 一回のドロップ操作完了までに、2〜3秒位掛かるんだけどこれ遅すぎだよな?
291 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:41:59.66 ] >>282 このプログラムのような細かいメモリ確保に対してC++では不可能で.NETが可能な最適化とは?
292 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:42:57.93 ] 標準でミリ秒測定できるとはいい時代になったなー GetTickCount()とか gettimeofday()を使っていた頃が懐かしい >>290 エロアニメの見すぎだろ
293 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:43:19.23 ] >>291 最適化の問題ではなく、 そもそもデバッグ用のメモリアロケータは バッファオーバーフロー検知や初期化漏れ検知のために 色々と小細工してる
294 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:48:09.15 ] >>293 それがC++と.NETの違いだとは思わんのだが。
295 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:49:37.20 ] >>293 じゃあ君のパソコンで比較して 結果貼りつけてみなよ 俺はメンドイからやらん そもそもメモリ管理の仕組みが 根本から違うんだっての 最適化の問題じゃない C++使いがガベコレにnewで勝てると 思ってたなんて新発見だわ
296 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:49:50.38 ] >>294 小細工ってのは、特定の値で初期化することで、 初期化のコストが発生する
297 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:51:54.14 ] >>269 フリーリストを手繰る処理を省略して、その分の処理をGC時にやってるようなもんだろう。 総計算量はイコールとは限らんが。
298 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:53:20.57 ] >>295 勝ち負けで言ったら予測不能な 中断を受ける可能性が入るC#は 処理時間にシビアな世界では負けだな 役に立たない
299 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:55:21.04 ] C/C++を使う理由は速度とかじゃない気がする。 .NETは十分速いもん 体感的には.NETが遅いので、C/C++を使うじゃないかとー
300 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:55:29.30 ] C++のほうは個別のdelete終了ごとにアロケータの内部整合性を保たないといけないけど、 GCなら一括でいろいろできるね。
301 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:56:19.37 ] >>299 .NETはPC上でしか動かないからな。組み込み.NETランタイムとか開発されれば別だが。
302 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 11:58:53.09 ] 速度だよ 似たようなアルゴリズムを .NET で実行と明らかに遅い
303 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 12:04:51.96 ] 標準、dlmalloc、tlsf、固定プールとか いろいろ比較してみたいけど、なんか環境用意するのが面倒だな…
304 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 12:08:21.19 ] >>302 比較コードはよ
305 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:00:24.45 ] あいかわらず無意味な比較してるなあ .NETのコア部分はC++で書かれてるのに
306 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:06:32.79 ] 何かが成功するかタイムアウトするまでループって処理で for (int i = 0; i < 5000; i += s){ nanika = suru(); if (nanika == seikou) break; sleep(s); } みたいのが繰り返し出てくるんだけど、何か上手い書き方ないですか? optional r = seikou_or_timeout(5000, [](){ return optional(...); }); こんな感じで書けたら素敵なんですが・・・・・・
307 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:08:47.13 ] WaitForSingleObjectで別スレッドで動かすとか
308 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:09:50.63 ] そこまで書けるのなら書けば良いじゃん
309 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:10:13.45 ] >>305 >>253 の疑問を晴らすには そんなにおかしな比較とは思えんが、 いつかの空ループベンチよりはマシだ >.NETのコア部分はC++で書かれてるのに 惨めwww
310 名前:269 ◆QZaw55cn4c mailto:sage [2013/05/19(日) 13:12:31.15 ] >>297 >総計算量 アロケーションからリリース(GC込みこみ)までトータルでみてどっちのほうが速いかというのが気になります。 C/C++ の場合は cmalloc() させるとしても、それでも C/C++ の方が速いと、どーしても思うのですが
311 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:14:51.55 ] >>306 win32api ならイベントオブジェクトを好んでいるんですけれども‥‥posix 系はどうしているのだろう?
312 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:22:24.52 ] >>308 ラムダ式が何を返すにしろとにかくoptional的な何かに突っ込んで返すってとこがどう書けばいいのか よく分からないのと、もしかしたらループ以外に何か上手い方法か、そういうライブラリが既にあったり するのかな?という期待も込めて・・・・・・
313 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 13:23:08.79 ] >>307 >>311 イベント、ちょっと調べてきます。
314 名前:290 mailto:sage [2013/05/19(日) 13:37:52.62 ] OLE D&D動作の確認だから、ドロップしたファイルのサイズは1kb程度 これだけで、2〜3秒はやっぱり遅い(Windows XP)。 んで、他のOSで(Windows7)確認してみたら一瞬、OS依存か
315 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 14:06:21.42 ] >>311 POSIXには条件変数というクソな同期の仕組みがある。 そのクソ仕様はそのままC++11に取り込まれたけどな。
316 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 14:37:12.62 ] >>310 >>281 のC#はGCを含んでるだろ
317 名前:規制外板にてレス代行依頼中 [2013/05/19(日) 15:13:13.94 ] すいません。 dup2の動きについて教えてください。 dup2(oldfd,newfd); でoldfdとnewfdが同じ値の場合、dup2() は何もせず、newfd を返す。 というのが正しい処理だと思います。 そこで質問なのですが、昔の環境だと、 この処理はどのようになっていたのでしょうか? www.freebsd.org/doc/ja/books/design-44bsd/book.html に、(もし、指定された番号の記述子が使用中の場合、 dup2 は、まずその記述子を閉じたのち、 再割り当てします)。 とありますが、 昔の環境だと、dup2(oldfd,newfd)で同じファイルディスクリプタを 指定した場合、どのように動作していたのでしょうか?
318 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 15:38:02.15 ] >同じ値の場合、dup2() は何もせず、newfd を返す。 >というのが正しい処理だと思います その根拠は?
319 名前:規制外板にてレス代行依頼中 [2013/05/19(日) 15:51:35.67 ] >>318 manに書いてあったためです。 linuxjm.sourceforge.jp/html/LDP_man-pages/man2/dup.2.html www.jp.freebsd.org/cgi/mroff.cgi?sect=2&subdir=man&lc=1&cmd=&dir=jpman-7.3.2/man&man=dup2 では逆に教えてください。 oldfdが有効である。 dup2の引数のoldfdとnewfdが同じ値である。 この場合に、dup2の戻り値がoldfdと違う場合は、どのような条件が 考えられるのでしょうか?
320 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 16:01:03.13 ] >>319 そのLinuxの方はエラーが無い限りoldを 返すと書いてあるので、エラーが起きたかバグがあるか BSDの方はエラーがある場合は同様だけれど エラーが無い場合について言及されていないので 何が返っても文句は言えない それ以上のことはリンク先のISO/IEC 9945-1:1990 とやらを読まないとなんとも
321 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 18:17:05.12 ] >>306 C++11ならasyncとfuture::wait_for使うところかな
322 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 18:30:11.24 ] 中断が必要なものにfutureねぇ。 メイン側に待つ以外のやることもないし。 ループ構造なんだから、ループ開始前に 取得した 時刻からの経過時間に閾値を設けて タイムアウトさせる所じゃないの?
323 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 23:10:03.14 ] >>315 条件変数ってcondition variableのこと? それならwin apiにもあったような
324 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 23:32:23.75 ] for ( auto i = 0; i < 3; i++ ) const int N = 10 * 1000; for ( auto i = 0; i < N; i++ ) これらの場合の、iの型の推論はどう行われるの 上のiは0以上3未満だからunsigned 下のiはconst int Nとの比較するからint って感じ?
325 名前:デフォルトの名無しさん mailto:sage [2013/05/19(日) 23:36:31.46 ] 0はintなのでintです 終了
326 名前:デフォルトの名無しさん mailto:sage [2013/05/20(月) 03:08:47.68 ] autoで宣言する意味はないぞ。
327 名前:デフォルトの名無しさん mailto:sage [2013/05/20(月) 03:20:55.82 ] ゼロオーバーヘッドさん現る
328 名前:デフォルトの名無しさん mailto:sage [2013/05/20(月) 07:21:26.05 ] 数値リテラルは型が分かりにくいのでautoにしない方がいい
329 名前:デフォルトの名無しさん mailto:sage [2013/05/20(月) 11:08:50.04 ] イテレータはautoが有効活用される場面の1つだし、 >324くらいならautoでもいいんじゃね? と思ったりする
330 名前:デフォルトの名無しさん mailto:sage [2013/05/20(月) 11:15:54.75 ] www32.ocn.ne.jp/~ons/text/CPP0xFAQ.html.ja#auto こういう例はautoで書いた方がいいだろう
331 名前:デフォルトの名無しさん mailto:sage [2013/05/20(月) 18:39:16.79 ] サイズを指定するような定数や ループインデックスに厳密な型の 意識が必要か? むしろautoでお茶を濁したいところ。 実数だけ区別ついてれば構わん。
332 名前:デフォルトの名無しさん mailto:sage [2013/05/20(月) 18:49:03.43 ] >>324 のNがintじゃなかったら型の不一致でバグのもとだ autoよりもdecltype(N)のほうがいいだろう
333 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 01:09:20.63 ] autoなんてゆとり機能使うの止めて
334 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 01:26:57.88 ] >>333 じゃあ>>330 みたいなのをautoなしで書いてみてよ
335 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 01:38:22.92 ] プログラムなんてゆとり機能を使わずに 紙と鉛筆で何でも処理すべきだな
336 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 06:38:06.80 ] IT屋はみんなしねばいい お前らがシステム構築して作業効率あげるから ノルマが増えたり仕事を追われる人がたくさん出てくる 社会を破壊してるクズという自覚をもて
337 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 07:25:52.21 ] 出たよ逆恨み
338 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 07:29:31.14 ] 事実だな うちも馬鹿が自慢のツール()作るのが生きがいにしてて 仕事を自動化するからノルマが増えてクソだるい 一度やるとツール使えない現場でも同じ仕事量もとめられんだよカスが
339 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 07:44:34.90 ] ざまあ
340 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 15:07:06.00 ] 事実だな 馬鹿どもが平日毎日会社いくから俺まd まあ誰も何もしないで他の会社や国だけ効率あがってったら 最終的に全員仕事追われるとは思うがな
341 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 21:12:51.25 ] visualc++ 2010 express でSendMessage使いたいんだけど spy++がないからどういうメッセージか調べられないけど どうすればいいかな?
342 名前:片山博文MZパンク ◆0lBZNi.Q7evd [2013/05/21(火) 21:14:51.06 ] >>341 winspector spy spyguru
343 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 21:18:12.48 ] >>341 >spy++がないからどういうメッセージか調べられないけど まず、何をしたいのかよくわからない
344 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 21:37:54.75 ] >>341 Professional版買うのがいいと思うよ 無償版のC++でGUIアプリとか無理ゲー
345 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 21:40:02.19 ] インターフェイスなんか♯でいいだろ
346 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 22:40:29.69 ] VS2010でC++は確かプラットフォームSDK入れないと ネイティブコンパイルできないんじゃなかったっけ。
347 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 22:41:39.68 ] ちなみにVSでProが必要なのは仕事でチーム開発する人とか だけだと思うよ。基本機能はExpressで全部そろってる。 SDKとか追加で入れる手間はあるけど無料だし。
348 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 23:00:36.68 ] >>342-344 VC6ではWM_〜をそのままコピペで使えたけど実力不足で 2010でSendMessageは難しそうです。レスありがとうございました。
349 名前:デフォルトの名無しさん mailto:sage [2013/05/21(火) 23:42:22.88 ] >>347 仕事でもVSS使ってるとこなんてごく少数だろ。 それよりもMFC/ATLが必要でPro買ってるのがほとんどじゃねーか?
350 名前:デフォルトの名無しさん [2013/05/22(水) 00:06:53.16 ] TFSは2012でExpressが出たでー
351 名前:デフォルトの名無しさん mailto:sage [2013/05/22(水) 00:22:58.84 ] visualassistがないとコーディング時のストレスがやばいからpro買ってる
352 名前:デフォルトの名無しさん mailto:sage [2013/05/22(水) 00:47:20.01 ] >>349 Proの評価版を入れてspy++を使えば良いんじゃ 評価版のspy++をexpressにコピペすればspy++が使えるんじゃないのか 評価期間終了したらコピペspy++を消せば良い
353 名前:デフォルトの名無しさん mailto:sage [2013/05/22(水) 01:11:36.21 ] ...アンカー間違えてる,orz >>352 は>>341
354 名前:デフォルトの名無しさん mailto:sage [2013/05/22(水) 03:12:57.95 ] そもそもSendMessageするのに なんでSpy++ツールが必要なのかふしぎ
355 名前:KUSO KOTE mailto:sage [2013/05/22(水) 03:26:33.98 ] >>346 Visual C++ 2010 ExpressでSDKが必要になるのは 64ビットコンパイルする時。
356 名前:デフォルトの名無しさん mailto:sage [2013/05/23(木) 18:56:02.07 ] / | | | |i :ili、 l | | ヽ ヽ! / ;イ . / | }| ヽ\,__ili_i、 l | l ハ ┼ | ̄| / // _,. イ! | | 「 il|ヘ | | ! |二| | ̄| レ/ / / ; i|l|i|リ ,;iii yz ,z, | | l | | .|_| | ̄| レ / ≠y、li|li|i ″ '´ rぅxヾ寸、 ll ! l | ┼ ノ 」 ./ 气 ` ゙r; ; 、、 ゝ‐′リii小从 |「`ヽ ヘ.{ _ク_ ヽ/ / :ツ / 〃 { \`‐=彡'″{^Yl} | '. ` |__|__| 二|二 / =彡 ''" 丶 「゙弋ー、l i .|__|__| _|_ / / | 、 \ 、 | / | | ヽ | / ィ n r !|l l ;;l :! 人 /イ// _, | || l | | | / \ / . , /⌒ー'⌒ヽ.〈 ! l{ ' Vl | ノ \ /イ / /「「「「「「「「「「「い jll{ Yj| __|_ ヽヽ ./ ,.イ \ ll /!i|i|i|i|i|i|i|i|i|i|i|i|} |i /ノ ,;i }` 、 | ー /,、-'´/ `ヽ{ レ'´ `く ヽl| |i / ″′ ヽ .| ヽー / ヽ ノ ′,;ii/ / | / ト- ==== ''" ,,;iill/ / } | / . ノ /iilil{ / { | ``‐-、._ ≧== 彡l||llx _ イ ∧ / ,勿 ヽ .| _,、-‐'"  ̄`xl|i彡'´ / ハ 〈 彡'´ ノ | | | | \ | | | | \
357 名前:デフォルトの名無しさん mailto:sage [2013/05/23(木) 22:22:51.29 ] >>352 お巡りさんこいつです。