[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 01/22 21:00 / Filesize : 119 KB / Number-of Response : 577
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Visual Studio 2005スレ Part21



1 名前:デフォルトの名無しさん [2007/06/01(金) 19:00:40 ]
Visual Studio 2005 Developer Center
www.microsoft.com/japan/msdn/vstudio/2005/
lab.msdn.microsoft.com/vs2005/

Visual Studio 2005 製品ライン概要
www.microsoft.com/japan/msdn/vstudio/productinfo/productline/
www.microsoft.com/japan/msdn/howtobuy/vs2005/

Part20
pc11.2ch.net/test/read.cgi/tech/1176646923/

321 名前:デフォルトの名無しさん [2007/06/19(火) 13:42:54 ]
>>319
>>320
ありがとうございます。
パスの通った先は探してみましたが、それらしいDLLはありませんでした。
VCのカレントディレクトリは変えていないのですが出力先とかは相対指定
のままになっています。とりあえずこれを絶対指定に変えて試してみます。

322 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 13:50:53 ]
>>321
DLLが無いのになんで古いDLLで実行してるんだ

323 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 14:01:49 ]
ファイルの日付ぶっこわれてね?


324 名前:デフォルトの名無しさん [2007/06/19(火) 14:53:03 ]
      |
      |
      |
      |              /  ̄   ̄ \
     (=)           /、          ヽ
     J >>314       |・ |―-、       |
                   q -´ 二 ヽ      |
                 ノ_ ー  |     |
                 \. ̄`  |      /
                   O===== |
                  /          |
                   /    /      |

325 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 15:26:10 ]
例外って劇遅なの知らないの?

326 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 15:43:43 ]
誰が言い出したんだろうな。

327 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 16:46:18 ]
スタックフレーム生成するから?

328 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 17:19:52 ]
スタックフレーム巻き戻すからだろ。

329 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 17:35:54 ]
どこまで進んだかをイチイチ記録するんだっけ
そんなasmを見た記憶がある
あ、違うわ
ipと比較するんだった




330 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 17:52:56 ]
例外が遅いってのにも2つほど意味がある

331 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 17:59:54 ]
例外→異常事態

332 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 18:01:08 ]
それは違う

333 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 18:03:05 ]
違わない

334 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 18:04:23 ]
非常事態

335 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 18:05:20 ]
例外って要するに下向き限定gotoだろ。

336 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 18:08:06 ]
例外を、単なる別のエラー処理技法のように扱ってはいけません。
エラー コードを返したり、グローバル変数の設定したりすることと
同レベルだと思ってはいけません。例外は、それを取り巻くコードの
構造と意味を、根底から覆します。例外は、プログラムの実行時
セマンティックを一時的に繋ぎ変え、通常実行しているコードを迂回し、
こういう状況でなければ決して実行されないコードを動作させます。
例外は、エラー状態を認知させ、プログラムの死という罰則を用いて
その状態を改めようとします。

このように、例外には単純なエラー処理を超えた特性があります。
これらの特性を必要としない、理解しない、あるいは文書化したく
ないなら、例外をスローしてはいけません。
例外以外のエラー処理技法を探してください。

337 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:15:32 ]
ネストしたループからの脱出に例外使ってるんだけど、そういうのだめなの?

338 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:36:25 ]
それは論外だけど、>>336みたいな人も痛いねw
でもいるんだよねこういう風に妙な勘違いをしてる人って実際。

339 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:37:05 ]
>>337
だめぽ



340 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:38:13 ]
例外は起きないから例外って言うんですよ。
(正常時に)

341 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:38:31 ]
つうか標準ライブラリ使ってる時点で例外処理考えなくちゃなんめぇわけだが

342 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:39:56 ]
336はmsdnだろう。

343 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:40:14 ]
妙な勘違いと言ってる人ほど、
なぜそれが妙な勘違いかを説明する事ができない。
とりあえず貶めたいだけだな。

344 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:45:49 ]
>>340
起きる可能性があるから例外って言うんだ。

345 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:47:27 ]
そんなこという人、嫌いです。

346 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:51:05 ]
そんなこという人、好きです。

347 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:52:50 ]
>>344
頻繁に起きないから例外って言うんだ。

348 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 20:54:32 ]
頻度は問題じゃない

349 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:03:21 ]
>>343
妙な勘違いというのは例外とエラーコードを返り値で返したり
GetLastErrorでエラーコードを取得することに本質的には違いなんて何もないことだ。

違いといえば、エラーに関する情報が例外オブジェクトに集約されていて
より直観的に扱えるね、ぐらいなもの。

何かまるでパラダイムが違うかのような言い方はどうかね。



350 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:05:23 ]
遅いんだよ

351 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:07:05 ]
そーす

352 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:08:20 ]
関数を大きく飛び越えて動作可能だから本質的に違う。

353 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:16:48 ]
=== a.cpp

#include <iostream>
#include <exception>
#include <cstdlib>
#include "common.h"

int ex() {
        try {
                if(std::rand() > RAND_MAX / 2) {
                        throw std::exception();
                }
        } catch(std::exception& e) {
                return 1;
        }
        return 0;
}

int main() {
        int count = 0;
        for(int i = 0; i < TIMES; ++i) {
                count += ex();
        }
        std::cout << count << std::endl;
}


=== common.h (二重インクルード防止は略)

const int TIMES = 1000000;

354 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:18:14 ]
#include <iostream>
#include <exception>
#include <cstdlib>
#include "common.h"

int ex() {
        if(std::rand() > RAND_MAX / 2) {
                goto ON_ERROR;
        }
        return 0;

ON_ERROR:
        return 1;
}

int main() {
        int count = 0;
        for(int i = 0; i < TIMES; ++i) {
                count += ex();
        }
        std::cout << count << std::endl;
}

355 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:20:02 ]
↑は b.cpp

g++ -O3 でそれぞれコンパイルして、実行時間を比較。

$ time ./a
500455

real 0m2.169s
user 0m2.150s
sys 0m0.009s

$ time ./b
500455

real 0m0.038s
user 0m0.023s
sys 0m0.005s

速度差は明らか。

356 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:20:51 ]
遅いんだから使うなつってんの

357 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:25:26 ]
1000000回も回してこの程度の差ですか?

358 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:27:10 ]
今の時代JAVAのように遅くても如何に簡潔に安全なコードを書けるかが問われているわけだが

359 名前:デフォルトの名無しさん [2007/06/19(火) 21:28:51 ]
遅いJAVAなんて誰も使わねぇよ



360 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:33:14 ]
それじゃchain of responcibilityパターンで
エラーが発生した時点でチェインを遡りながらログを出力していく処理、をgotoと例外の二種類で書いてみてよ

361 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:35:55 ]
自分でかけよ馬鹿

362 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:36:07 ]
なんでそんな変なところに読点ついてんの?

363 名前:デフォルトの名無しさん [2007/06/19(火) 21:39:08 ]
結局例外ってどうやって使うのよ?

364 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:40:20 ]
例外が起こることを前提にするのはダメ
あくまで例外的な状況で

365 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:43:30 ]
パトカーでセンター試験に行くようなもの

366 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:50:22 ]
パトカーでセンター試験に行きましたが何か?

367 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:53:34 ]
交通事故目撃して通報したらそのまま事情聴取で時間取られて
あ、これはヤバイと思ったら巡査の人がパトカーで送ってくれた

368 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 21:53:55 ]
ララァはかしこいなあ

369 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 22:06:22 ]
念のためパトカーに乗せて行ってもらう手はずを整えとくのはいいが
そうならないように早めに家を出るのは当たり前



370 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 22:09:16 ]
なるほど

371 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 23:20:18 ]
>>364
キャッチできたらラッキーてな不安定なものならその理屈はわかるが、
そうじゃないのにそんなこと言うのはただの馬鹿。

372 名前:デフォルトの名無しさん mailto:sage [2007/06/19(火) 23:39:57 ]
例外は言語仕様として自分で投げれるようになってんだから
性能に問題なきゃ使ってもいいんじゃねーの
それでもダメって言うのは大きなお世話だ。

要はポリシーの問題。

373 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 00:02:19 ]
セキュリティポリシー入りま〜す

374 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 00:17:59 ]
例外使えば安全?
それはちょっと違うんじゃね?

全ての例外に真面目に対処する気があるのなら安全かもしれんが。

375 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 00:22:47 ]
>例外は言語仕様として自分で投げれるようになってんだから

勿論、ループ抜けたりあほな使い方を推奨するためにではない。


376 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 00:29:18 ]
しかしこれが21世紀になってやる話題かとおもうとなんだかとっても悲しくなってくるな。

377 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 00:44:15 ]
悲しい存在は何時の時代にも居る

378 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 00:51:45 ]
>>376
21世紀らしい話題を7つ言ってみろ

379 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 01:02:54 ]
newしてdeleteしなくてもソフト終了時に開放されるだろ



380 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 01:52:02 ]
Win95 あたり怪しかった気がする。

381 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 03:00:40 ]
チキンラーメン最強←結論

382 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 10:35:58 ]
たしかに終了時に開放される。
問題は終了しないで使う時だな。

383 名前:デフォルトの名無しさん [2007/06/20(水) 22:54:30 ]
VC2005Expressのユーザーですが、ヘルプの使い方がいまいちわかりません。
たとえば、
#define hiroyuki 10
だと、
hiroyukiを10と読み替えるです。
でも、
#define hiroyuki
だと、
hiroyukiという文字列があると、それはなかった事にする
とうい仕様みたいです。
この仕様はヘルプのどこに書いてありますか?

384 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 22:55:32 ]
仕様も何も、「なにもない」と読み替えるだけで、
上と下で何かが違うわけではない。

385 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:00:52 ]
>>384
それは変だろうw

>>383のような疑問を持つことそれ自体は真っ当だと思う。
くだらないけど。

386 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:02:25 ]
ん? 変か? どこら辺が?

387 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:14:32 ]
>>383
msdn2.microsoft.com/en-us/library/teas0593(vs.71).aspx
ただし、これはCやC++のISO規格に基づいた挙動だから、
最終的にはそっちを見ろとも言える

C/C++など言語自体のことは、Visual Studioのヘルプで何とかなるとあまり思うなよ

388 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:15:46 ]
>>386
君プログラマじゃないだろうw

その、二つ目のパラメータが省略された場合はそれをナルストリングとみなす、
というのが「仕様」そのものじゃないか。

389 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:29:47 ]
>>388
マクロ名(引数のカッコ含む)から0個以上の空白文字を無視し、
その後改行までのテキストと置換する、

と定義すれば、そんな仕様は必要ない。



390 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:35:02 ]
>〜と定義すれば
そういうのを「仕様」とよぶのだよ坊主

391 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:36:20 ]
くだらん

392 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:37:13 ]
仕様と聞くと震えが止まりません・・・

393 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:37:18 ]
そういうしょうもないことに拘るのは似非プログラマ

394 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:38:09 ]
しょうがないは、仕様が無い→どうしようもない\(^o^)/
の事だと思えてきた俺は末期

395 名前:デフォルトの名無しさん mailto:sage [2007/06/20(水) 23:41:44 ]
>>390
上下とも同じ仕様で理解できるんだから、
下を理解するのための特別な仕様なんて要らないだろ、と。

396 名前:383 [2007/06/20(水) 23:56:18 ]
皆さん、レスどうもです。

>C/C++など言語自体のことは、Visual Studioのヘルプで何とかなるとあまり思うなよ
つーか、マクドナルドにパソコンを持ち込んで勉強するのが好きなんですが、
紙の本を何冊も持ち込むのが重たくて大変です。
で、電子化されたC言語やC++の参考書や辞典、って何かないですか?

397 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:04:58 ]
猫?

398 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:11:41 ]
食べ物屋にパソコンや本持ち込むってどんな神経だよw

399 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:16:29 ]
>>398
ごめん、俺、外で食事する時は必ずノートPCと書籍は持参して
食べ物がでてくるまでの間、しこたまノートPC弄ってたり本読んでたりする。



400 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:16:54 ]
巣束で普通にしてますが何か?

401 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:20:48 ]
画面上のマニュアルなんか見たくないだろ
むしろ金かけずに本にする技術が欲しいくらいだ

402 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 00:25:07 ]
ホームポジションからあんま手を動かしたくない。
マウスに手を伸ばすだけでも嫌なのに、
本なんてもってのほか。

403 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:04:35 ]
>>402
椅子にあぐらかいて座って又の上に書籍広げてキーボードさわるわしは変態か!


404 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:09:59 ]
>>403
そのキーボードや書籍のすぐ近くにあるジョイスティックも弄ってるなら変態確定。

405 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:11:48 ]
つーか、本って手で持ってないと閉じちゃうジャン。
だから俺はもっぱら電子マニュアルだ。

406 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 01:12:42 ]
本は検索できないしな。
索引が限度じゃな。
ま、ぱらぱらと見る分には本もいいんだが。

407 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 02:30:40 ]
>>400
短足乙

408 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 02:33:37 ]
>>396
CマガのDVDとかどうだ?

409 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 07:38:35 ]
>>396
GoF に CD が付いてるがどうかね?



410 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 16:41:05 ]
catchが遅いの?
throwが遅いの?
newが遅いの?

411 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 17:01:48 ]
partialってなんて読むの?パーチャル?

412 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 17:07:18 ]
おっぱい

413 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 17:08:14 ]
J#「何のために生まれて何をして生きるのか。
 分からないままなんて、そんなのは嫌だ。」

414 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 17:11:43 ]
>>410
throw

415 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 17:37:04 ]
>>413、J# 誰もお前になんか、何も期待しちゃいないよ。お前はただの飾りだよ。そんなこともわからなかったのかい?
ぼくも.NETを支える新しい言語なんだってがんばっていたよね?傍から見ていてこっけいだったよ。笑いを抑えるのに必死だったさ。
お前はどっちつかずの使えない言語のままでいるのがお似合いさ。

416 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 18:24:30 ]
親がJ++だからなw

417 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 20:01:26 ]
つーことは例外処理は例外が発生しないという条件化では大した速度的ペナルティは無いってことでいいの?

418 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 20:57:54 ]
J#って擬人化されてる?

419 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 21:04:39 ]
J#( 'ー`)し

たかし。



420 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 22:15:57 ]
try もコストは発生するはずだけど、どのくらいなんだろな。

421 名前:デフォルトの名無しさん mailto:sage [2007/06/21(木) 22:44:37 ]
+1するだけの関数を繰り返し呼ぶというサンプルで
テストしたことあるけど、VC2005の場合10%ぐらい速度低下した。

tryも繰り返しの中に置くと、コストがばかにならんかも。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<119KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef