トップページ⇒tech
455コメント137KB

new/deleteで異常終了する(Visual C++)

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2010/01/06(水) 20:35:52
大変、困っています。
Visual C++ 2008でコーディングしています。
コーディングは何度も何度も見直しました。
間違っていません。

なのに、実行するとnewで異常終了します。
debug版で動かすと動きます。release版で動かすと異常終了します。
デバッグのしようがありません。

ホントに、コーディングは正しいんです。
こういう症状の原因って何が考えられるでしょうか。

よろしくお願いします。

deleteでも異常終了します。
未初期化ポインタのdeleteとかそんなのではなくて、
本当にコーディングはあってるのに、異常終了します。

動きは、毎回違います。
例えば、printfデバッグをしようとしてprintfを
挿入すると、異常終了ポイントが変わります。
でも、newかdeleteで落ちます。

ホントに、ホントに、コーディングは合ってるのに
どうしようもありません。

もう何ヶ月も仕事が進みません。
このままだと、クビになっちゃいます。

お願いします、本当に、よろしくお願いします。
0342デフォルトの名無しさん2010/02/19(金) 13:10:36
みんなアホすぎて話にならん。
noncopyableを使うメリットは、クラスの宣言全部を見ることなくそのクラスがコピー不可だとわかること。
privateに追記派は、クラスのコメントに「コピー不可なクラス」とか書いちゃうわけ?
0343デフォルトの名無しさん2010/02/19(金) 21:54:01
誤ってコピーを誘発させる記述をしてしまった時にコンパイルエラーが
引き起こってくれればいいわけでどっちでも構わないけどな

まあ、値渡しで何が起こるかわからないとか、コピー禁止の方法を知らないとか、
そういうのがこの上のレスだけでも散見できるわけで
noncopyableがあれば一目瞭然というほどの知名度はなさそうだけどな

>>341
final属性か何かと勘違いしていないか?
034412010/02/21(日) 17:57:36
バグは取れておらず先週サーバーとして動作していた
アプリが突然落ちて、DBマスターを壊したみたいで
大騒ぎでした。で、金曜日についにM$社の担当者が
呼び出されていました。ソースを渋々見せながら状況
を上司が説明したところ、結局担当者にも原因がわか
らなかったようで、「どうか御内密に」という意味で
しょうか、ずっしりと重いキャスター付き旅行用スー
ツケースを置いてきました。あの中には何が入ってい
たのかは大体想像がつきますが、金曜日の晩は普段は
飲み会は常に割り勘なウチの会社が珍しく高級バーに
招待してくれました。
0345デフォルトの名無しさん2010/02/21(日) 19:54:52
「サーバーとして動作していたアプリ」はサーバじゃないのか、てのは置いといても
それで DB 壊れるってかなり酷いレベル。
0346デフォルトの名無しさん2010/02/21(日) 20:45:49
コマンドラインで単独一回限りの実行もしてくれるんですが
/Sオプション付けると常駐して専用DLLを通して
連続的にサービスを実行してくれるアプリケーションも
あります。
0347デフォルトの名無しさん2010/02/21(日) 22:40:09
なんか一気に嘘臭く
0348デフォルトの名無しさん2010/02/22(月) 01:16:05
ホラも限度を超えると訴えられるぞ
0349デフォルトの名無しさん2010/02/22(月) 07:23:32
だよな。
これはMSに訴えられたら負けるレベル
ネットには何を書いてもいいといまだ思っているやつがいるとは。
ご愁傷さま
0350デフォルトの名無しさん2010/02/22(月) 13:24:45
サイドパーティを含めて
ずっしりと重い過去資料(マニュアル、参考書、一部プリント
アウト)ってのが関の山だろ
使用許諾契約書にミッションクリティカルな用途には
使ってはならない
と明記されているんだし...
0351デフォルトの名無しさん2010/02/22(月) 14:19:42
サイドメニュー?
0352デフォルトの名無しさん2010/02/24(水) 01:13:08
サラダとかデザートとかもりもり出てくるパーティかな。
0353デフォルトの名無しさん2010/02/24(水) 04:45:53
サイドパーティじゃなくてサードパーティ
これは敢えて書く迄もないだろw
>>1が高級バーに連れて行ってもらえた
実はこれから始まるバグフィックスまでの
開発室監禁の挨拶代わりじゃねの?
0354デフォルトの名無しさん2010/02/24(水) 12:24:57
「今日のバーはサラダも食べ放題だ」
「ええっ!!ドリンクだけじゃないんですか?!!!」
0355デフォルトの名無しさん2010/02/24(水) 17:03:51
パーティじゃなくてバー
0356デフォルトの名無しさん2010/02/24(水) 19:50:52
ああ、キカイダーが乗ってるやつ。
035712010/02/24(水) 21:58:37
>>1ですが、今同僚の女性社員3名と開発室に監禁されて
ます。部屋にはビデオ付きベッドが置かれており共用で
す。シャワールームもトイレットも何故かついてます。
ベッドの上にテーブルを持ち込んで4人並んでPCに
向かってます。部屋はかなり暖房がキツめで皆裸です
0358デフォルトの名無しさん2010/02/24(水) 23:19:23
おっきした
0359デフォルトの名無しさん2010/02/24(水) 23:32:59
トイレをトイレットと言う所に感心した
0360デフォルトの名無しさん2010/02/25(木) 06:45:30
>>358
だが待ってほしい。その3人が森三中レベルだったとしたら、どうだろうか?
036112010/02/25(木) 15:15:22
まだ開発作業は続いています。昨晩はちょっと原因が
わかりかけたので3人からご褒美を頂きました。
それぞれ微妙に違うもんですね。結構開発されてました。
さすがに4人でダブルベッドに寝るのは窮屈でしたが。
起きたのはお昼前です
0362デフォルトの名無しさん2010/02/25(木) 15:32:08
2回射精した
0363デフォルトの名無しさん2010/02/26(金) 13:01:37
いいスレだな
0364デフォルトの名無しさん2010/02/26(金) 15:16:52
ここにきて良スレと化す
036512010/02/26(金) 17:00:36
今日も監禁開発作業が継続されています。
見込みでは週明け位までは終わりそうに
ありません。
今日始めて一人の同僚がお尻を拭かせて
くれました。
いつもはボクが前のほうを拭く役割なので
すが...
036612010/02/26(金) 18:12:48
開発作業って情事そのものだなって痛感してます
036712010/02/26(金) 21:00:32
あと、>>1の不具合が再発し、修正のための工数を精査し6ヶ月と見積もった所、
上司が発狂し3週間で直せと無茶苦茶な事を言い出しました。
社長と専務に「他人の不具合修正を超短期間でやれと押し付けられた」と
事実を伝えたらSと上司は3/21付けで他部署に左遷が決まりました。
五月蝿いのがいなくなったので、これで心置きなく
不具合原因報告書に「原因:Releaseビルド 修正法:Debugビルド」とかけます。
036812010/02/27(土) 02:00:51
今もまだ開発作業中です。
隣で一人の同僚の娘は裸で寝てます。
時々ボクの股間に手を伸ばしてきますが
払いのけながらの仕事です。もう慣れました。
0369デフォルトの名無しさん2010/02/27(土) 10:44:36
もう少しうまくやれ
0370デフォルトの名無しさん2010/02/27(土) 10:53:36
>>1がネタスレ化しようとして必死なのは理解できた
0371デフォルトの名無しさん2010/02/28(日) 00:42:38
おれにはもう1はいないように思えるんだけど
0372デフォルトの名無しさん2010/02/28(日) 01:14:29
>>1は実在しない。

>>1とは、無能な開発者を、Sに劣らないレベルの高いライブラリを作りたいと望む人々の間で、自然発生的に生まれた底辺プログラマである。

はじめはジョークに過ぎなかった。
>>1はこの世のどこかにいるはずの底辺プログラマだった。
しかしそれは>>14のまさに『糞』と呼ぶに相応しいコードにウンザリしていた京都大学霊長類研究所の間で瞬く間に広まって行った。
Sのコードがこう動いた。VCのあのデバッグモードは美しかった。
>>1はそうやって、少しずつ理想のバグの原因を突き止めていった。
彼は健康で顔色のよい新入社員である、彼が敵対する同僚はSである、彼はバグの原因を他人のせいにしておかないと落ち着かない、
そして彼は親しみやすいことにメモリ破壊が大好きなのだ!

>>1はこうして、天才チンパンジーの理想のプログラマのイメージのコラージュとして生まれたのである。
アイちゃんは>>1を欲した。故に>>1は存在するのである。
037312010/02/28(日) 01:33:13
ふ〜
まだバグが取れません。
彼女達は昼間かなりしつこく攻めてきましたが
さすがに今は疲れたのか横ですやすや三人並んで
寝ています。
彼女達のウンコの匂いも嗅ぎました。
一体感が出てきたので頑張って開発を続けます。
0374デフォルトの名無しさん2010/02/28(日) 11:09:08
スカトロはちょっと
0375デフォルトの名無しさん2010/03/01(月) 08:19:36
>横ですやすや
を横山やすしと空目したことだけは伝えたい。
037612010/03/01(月) 09:26:30
皆出勤してきたみたいです。隣のオフィスが想像しく
なってきましt。私たちはまだ監禁されてます。
037712010/03/04(木) 18:12:54
まだ監禁は続いてます。
作業開始から1000回はmakeしてます。
037812010/03/05(金) 04:54:12
お久しぶりです。本当の1です。>>293以来です。
またアクセス制限に引っかかって、ずっと書き込めませんでした。
>>344から>>377の1を名乗る書き込みは私ではありません。

お蔭様で、私が担当していたソフトは、無事納品できました。
試験もすべてクリアし、newやdeleteでの異常終了はもう起きていません。
037912010/03/05(金) 05:58:27
と言える日はいつ来るんだろか。
今日もまたオフィス横の監禁室での
彼女達とのmake作業が大量に...
0380デフォルトの名無しさん2010/03/05(金) 12:58:53
>>379
もうやめろよ。>偽者
0381デフォルトの名無しさん2010/03/05(金) 14:29:39
>>378
結局何が原因だったのかまとめてくれないか?
会社によってはそういうのは人工的に再現出来る
段階まで煮詰めないとフィックスしたとは
認めてくれないところもあるね。
0382デフォルトの名無しさん2010/03/05(金) 17:51:27
>>381
>結局何が原因だったのかまとめてくれないか?
メンバー全員のレベルが低かった。
0383デフォルトの名無しさん2010/03/05(金) 18:39:24
メンバーがC++を使うにはまだ早かった or 年行きすぎてもうCしか使えなかった
0384デフォルトの名無しさん2010/03/05(金) 22:10:29
原因:S
解決策:Sのコード修正

これが>>1の限界。これ以上の調査を>>1に求めるのは酷だぞ。
0385デフォルトの名無しさん2010/03/06(土) 10:24:51
原因:不明
解決策:仕様

これが>>1の限界。これ以上の調査を>>1に求めるのは酷だぞ。
0386デフォルトの名無しさん2010/03/06(土) 15:09:31
ポインタの二度消しやってて実行中にエラー吐いて
仕様だって騒いでた奴いたな〜
0387デフォルトの名無しさん2010/03/06(土) 15:42:08
俺のところには二度消しをやって修正に時間をおもいっきり喰った上に
レビューでdeleteを全て消して修正したと言い張り
挙句にnew/deleteはC++の不具合だと断言した奴がいた。

まぁ、>>1もその同類だろうがなw
038812010/03/06(土) 16:37:59
原因は同僚の女性とのコミュニケーション不足でした
今、改善に向かって日夜努力中です。
0389デフォルトの名無しさん2010/03/07(日) 12:09:10
俺は年行きすぎてもうC++しか使えん
0390デフォルトの名無しさん2010/03/07(日) 22:01:40
C++初心者だけど、>>1以外の人たちのレスが結構ためになった。
初めの方はみんな何言ってるのかさっぱり分からなかった。(何しろdelete[]の[]が□にしか見えなかったのは内緒)
悔しいから、分からない単語をひとつずつ調べていったら、徐々に理解できるようになった。
皆さんありがとうございます。
0391デフォルトの名無しさん2010/03/07(日) 22:32:09
俺も勉強になった。
みんな結構優しいんだよな。
0392デフォルトの名無しさん2010/03/07(日) 22:38:34
なんだ俺が二人もいるのか
0393デフォルトの名無しさん2010/03/08(月) 22:13:14
ゆとり乙
とりあえず中学くらいは卒業しとけや
0394デフォルトの名無しさん2010/03/11(木) 00:25:26
このスレを振り返ってみた。
>>44 での>>1 の取った行動。

44 :1:2010/01/07(木) 21:55:51
>>20 スルー
>>23 都合のいい一行目だけ視界に入るものの2行目は理解を超えたためスルー
>>31 同様にスルー

アッー
039512010/03/11(木) 00:32:40
監禁は続いています。みなもうクタクタです。
make総数はついに3000回を超えました。
絶倫と呼んで下さい。
ネットアクセスは暫く自粛しますんで。
次に1を名乗るカキコが出ても偽物だと思って
下さい。
0396デフォルトの名無しさん2010/03/11(木) 00:41:25
そんな大量の回数makeできるプロジェクトの規模なんて
たいしたことないと思うがw
0397デフォルトの名無しさん2010/03/11(木) 00:53:20
例えばLinuxカーネルとかだったら、一日に何十回も更新が入るんで
makeして問題が発生してないかチェックする専門グループ
とか居て、別スレッドで作業してんじゃね?
何十台ものPCで並列でmakeを数十分置きに行ってたりしてるとか。
正式なバージョンアップとして公開されるカーネルは失敗した
更新を除いたもの
0398デフォルトの名無しさん2010/03/11(木) 01:31:00
なるほどね
専門のチェックグループがいるのに>>14みたいなコードが許されてしまうのか
0399デフォルトの名無しさん2010/03/12(金) 12:40:25
永遠にクビになるまで監禁されてれば?
コピーコンストラクタと代入演算子の必要性がわからない奴は
C++触るなよ
0400デフォルトの名無しさん2010/03/14(日) 00:52:53
コピーコンストラクタと代入演算子の扱いのデリケートさは
C++の最大の難所。仕事でさせられる人は可哀想だと言えば
可哀想。
Java経験者ならすぐにその辺り察知して回避したり、使い
分けられるようになるだろうからなおさら...
0401デフォルトの名無しさん2010/03/14(日) 06:57:10
ジャバ(笑)
0402デフォルトの名無しさん2010/03/14(日) 07:52:12
蛇婆
0403デフォルトの名無しさん2010/03/14(日) 12:09:43
C経験者ってんならわかるけど
JAVAだけやってたひとがそのへんの
危険さをすぐに理解できるとは思えない
0404デフォルトの名無しさん2010/03/14(日) 12:37:12
JAVAって全部大文字なの?Javaじゃなくて?
0405デフォルトの名無しさん2010/03/14(日) 16:39:38
おっさんがよくJAVAって書くよな
違和感はあるが公式にも全部大文字の例があるから間違いではないだろう
それより全部全角のほうが気になる
0406デフォルトの名無しさん2010/03/14(日) 17:01:47
日本語入力にしてたら
英語入力しようとおもったらSHIFTキーを押しながらやるから全部全角でいいんだよ
いちいちF10を押したり半角全角で切り替えるのか?めんどくせーやつだな
0407デフォルトの名無しさん2010/03/14(日) 17:48:51
いや2chだし好きにすりゃいいよ
別にめんどくさいとは思わんけどね
おまえさんだってコード書いてるときは日本語入力切り替えるだろ
0408デフォルトの名無しさん2010/03/14(日) 21:21:49
どうかんがえても半角全角キー一回押すよりshift押しながら打つほうがめんどくさいだろ
いや、いいんだけどさ
0409デフォルトの名無しさん2010/03/15(月) 01:24:39
半角モード涙目
0410デフォルトの名無しさん2010/03/15(月) 01:44:30
Javaは良い選択肢だと思うぜ
>>1はJavaへ移行することでC++の煩わしさから解放されるだろう
オレも>>1がC++の世界からいなくなることで不安から解放される
0411デフォルトの名無しさん2010/03/15(月) 06:37:54
>>410もJavaを一度やってみたほうがいい
そしたらC++の煩わしさなど大半はアホらしい
もの(Java勉強不足/C勉強不足が原因)だった
ということがわかる筈(本当に煩わしいものは
あることはあるが)(C++の世界(笑))
0412デフォルトの名無しさん2010/03/15(月) 07:17:03
java(笑)なんて何の役に立つんだ
CPU資源を無駄食いした糞重いソフトが出来上がるだけじゃねえか
ソフトウェアは速さこそ正義だ
0413デフォルトの名無しさん2010/03/15(月) 09:04:02
みんながみんなF1を欲しいわけじゃないしなぁ
中にはステップワゴンを欲しい人間も居る
0414デフォルトの名無しさん2010/03/15(月) 09:26:11
JavaをF1に例えるのは買いかぶり過ぎ
C++もステップワゴンとは違うだろ
0415デフォルトの名無しさん2010/03/15(月) 09:33:08
おいw
0416デフォルトの名無しさん2010/03/15(月) 09:37:03
春眠暁を覚えず
0417デフォルトの名無しさん2010/03/15(月) 10:30:27
VC++ →(VC)++
BCC++ →(BCC)++
共にWindows環境依存の拡張があるんで、こう考えた
ほうがいいかも
Java→(--(C++))++
()を外す事ができないことに注意
0418デフォルトの名無しさん2010/03/16(火) 05:39:30
外す事ができないことに注意(キリッ)
0419デフォルトの名無しさん2010/03/20(土) 01:51:27
>>1はまだ監禁されて女子社員達とmakin' loveな毎日を
送ってるのか?
0420デフォルトの名無しさん2010/03/20(土) 02:59:29
南京に行ったんじゃね?
0421デフォルトの名無しさん2010/03/22(月) 18:33:19
偽1はもう来ないのか
0422デフォルトの名無しさん2010/03/23(火) 19:47:27
本物の1もなかなか来ないけどね。
0423デフォルトの名無しさん2010/03/24(水) 18:56:02
改めてC++は分かりにくいと感じたよ。
C#のネイティブコンパイラがVSに含まれないかなぁ。
0424デフォルトの名無しさん2010/03/24(水) 20:54:44
(Windowsユーザなら無償DL可という意味での)フリーな
csc.exeじゃ不満か?
0425デフォルトの名無しさん2010/03/24(水) 21:35:39
.NETではないネイティブコードを出力できるC#コンパイラが
Visual StudioのIDEから使用できたらなぁ。
という意味でした。
需要はあると思うんだけど。
0426デフォルトの名無しさん2010/03/24(水) 22:04:21
Ngenでも使ってください
0427デフォルトの名無しさん2010/03/24(水) 22:50:24
Ngenはネイティブコードにコンパイルしてくれるけど、
実行時には.NET Frameworkが必要だから。
0428デフォルトの名無しさん2010/03/24(水) 23:02:29
それは別にいいだろ
0429デフォルトの名無しさん2010/03/24(水) 23:03:18
どんな言語使っても>>1はダメだろ
0430デフォルトの名無しさん2010/03/25(木) 00:29:17
こんなクススレがなんで人気あるんだ?
0431デフォルトの名無しさん2010/03/25(木) 02:17:27
反面教師になるからかな。
0432デフォルトの名無しさん2010/03/25(木) 12:32:38
Mono-FrameworkではC#コンパイラがあってlinuxやMac-OS
でも動作するとか.
なんで現時点でもあの複雑きわまりない文法を解釈しネィティブ
コードを吐き出すものが無いとも言えない。
ただし勿論.NETの語彙に精通することがコーディングには
必須。されど.NETはWindowsアーキテクチャーを強く仮定
してるものだから使い勝手が良いものになるとは今のところ
思えない。
0433デフォルトの名無しさん2010/03/25(木) 14:40:09
>>432
日本語でおk
0434デフォルトの名無しさん2010/04/08(木) 18:06:40
ちょっと良く分からないんですが、
14のコードはばっちりC++だと思うんですが、
糞とか言ってる人は何が言いたいんでしょうか。
0435デフォルトの名無しさん2010/04/08(木) 18:41:53
悪いのは>>1じゃないもん
0436デフォルトの名無しさん2010/04/08(木) 18:46:05
>>434
だからインスタンスを関数呼び出ししたり代入してみろって

内部でヒープから確保する部分のあるクラスにコピーコンストラクタも
代入演算子もないとか、基本中の基本を破っているんだぞ
0437デフォルトの名無しさん2010/04/08(木) 19:08:33
件のC1をvectorに放り込んだらどうなるんだ?
0438デフォルトの名無しさん2010/04/08(木) 19:13:51
>>20でオチが出てる
0439デフォルトの名無しさん2010/04/08(木) 19:17:30
不思議なスレだな。
0440デフォルトの名無しさん2010/04/08(木) 19:18:05
で、>>1はクビになっちゃったとか?
0441デフォルトの名無しさん2010/04/10(土) 00:49:54
>>1みたいのが出ないように発症例あげてみる

http://codepad.org/tBficgxh
http://codepad.org/DghzfV7V
■ このスレッドは過去ログ倉庫に格納されています