質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Visual Studio 2013

Microsoft Visual Studio 2013は、Microsoftによる統合開発環境(IDE)であり、多種多様なプログラミング言語に対応しています。 Visual Studio 2012の次のバージョンです

Q&A

解決済

2回答

7617閲覧

visual studio 2013 デバッグ実行でソースが見つかりません

grapefruit

総合スコア33

デバッグ

デバッグはプログラムのバグや欠陥を検知し、開発中のバグを取り除く為のプロセスを指します。

Visual Studio 2013

Microsoft Visual Studio 2013は、Microsoftによる統合開発環境(IDE)であり、多種多様なプログラミング言語に対応しています。 Visual Studio 2012の次のバージョンです

0グッド

1クリップ

投稿2017/03/01 02:11

自分が書いたコードをデバッグで実行のステップを確認したいので、
ブレークポイントを張って、ステップイン、ステップオーバーを実行してみたが、
ある関数が終わるまで実行すると、つぎの関数に移る前に、
以下のようにエラーが出てきます。
イメージ説明
図に書かれてあるapp.cppは自分の記憶ではそのようなファイル書いてないです、
継承もしてないと思いますので、どこからのapp.cppなのでしょうか?

また、このコードはleapmotionとcinderを使っています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

例えばこういったことではないでしょうか

C++

1void foo() { 2 A a; // Aはapp.cpp内にデストラクターの実装が定義されているクラス 3 ... 4}

fooの実行を完了するとき(fooのスコープから抜けるとき)にAクラスのインスタンスaは破棄されるのでデストラクターが呼び出されます。ステップ実行などではAのデストラクターの動きもデバッグできるようになっているはずですがライブラリーのソースを自動取得する設定にしていないとこうした「隠れた」動きについてはご質問のようなメッセージが出たりしますね。

上記のようなパターン以外にもデストラクターなどの「直接ソース上に見えない動き」がありますが、言語仕様をよく考えれば「どのようなメソッドが動いているはずか」を推測できる場合もあります。

言語仕様から直接想像できないような「ランタイムの実装の都合で呼び出される低水準ルーチン」だったりすると推測は困難かも知れません。自分はそういうとき「なんかそれっぽいのが動いてる」ぐらいしか気にしません…

投稿2017/03/01 02:56

KSwordOfHaste

総合スコア18392

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

grapefruit

2017/03/01 08:23

回答ありがとうございます! 実行はうまくいくのですが、ステップごとに実行していくとそういうメッセージが出てくるのです。 おっしゃった通り、低水準ルーチンの可能性が高いっていうことですか?
KSwordOfHaste

2017/03/01 08:47

あなたが書いた関数の定義コードをみないとはっきりとはわかりませんが、その可能性が高い気がします。その状態になったらステップリターン(ステップアウト?)などとするとあなたのプログラムソース上に戻ってきませんか?ちなみに、ステップ動作は設定で変化する(ライブラリーの中へステップインするかどうか)が変わってくると思いますので設定如何ではご質問のようなことが起こらない場合もあると思います。自分は「ライブラリーの中へもステップインを許す」「ライブラリーのソースを自動取得」のオプションをONとしているのでライブラリー内のどの処理が動いているかも見ることができます。以前は「ライブラリーのソースを自動取得」をOFFにしていたので質問者さんと同じような現象がよく起きてました。
guest

0

一般的なことをお聞きしますが、そのソースコードは今デバッグしているPCでコーディングしたものでしょうか。どこか別PCから引っ張ってきてないでしょうか。

私もこれまでVB,C++,C#などでデバッグしましたが自分の手違い以外、今回のようなことは発生していないです。

回答になっていませんがお聞きしたかったので。

投稿2017/03/01 02:43

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

grapefruit

2017/03/01 08:20

回答ありがとうございます! 図にのっているソースコードは全部同じPCで操作しています。 ただし、色んなライブラリを読み込んでいたり、継承していたりしてます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問