VS中Debug 選單中的選單命令和功能

2021-09-29 23:58:44 字數 2027 閱讀 4100

debug 選單中的選單命令和功能

選單命令

快捷鍵功能

gof5

開始或繼續除錯程式,到某個斷點,程式的結束或需要使用者輸入的地方停止

restart

ctrl+shift+f5

重新開始執行程式,並處於除錯狀態

stop debugging

shift+f5

終止程式的除錯,放回到程式編輯的狀態

break

在當前位置暫停程式的執行

step into

f11單步執行程式的每乙個指令,能進入被呼叫的函式內部

step over

f10單步執行,當遇到乙個函式的呼叫時,該函式被執行,單並不進入該函式內部

step out

shift+f10

執行到當前函式呼叫返回後的第一條語句;

使用這個命令能在已確定錯誤不在當前函式中時,快速地執行完此函式

run to cursor

ctrl+f10

程式執行到當前游標處,相當於在游標處臨時設定了乙個端點

step into specific function

執行程式的每一步,並進入指定的函式呼叫,這個命令可以跟蹤任意多的巢狀函式

variable (變數)視窗

context (上下文)下拉框:在這裡選擇想要檢視的函式,然後 debug 會在視窗顯示函式區域性變數的當前值。該視窗有 3 個選項卡。

watch 視窗用於觀察和修改變數或表示式的值。它有 watch1、watch2、watch3 和 watch4 等 4 個選項卡,在每個選項卡中,使用者都必須手工設定要觀察的變數或表示式。

為了快速查詢程式設計中的錯誤,mfc 提供了一些跟蹤和斷言巨集,其中常用的有 trace()、assert()、assert_valid()等。

1.trace()巨集

trace()巨集在除錯視窗輸出變數數值,它採用類似於 printf()函式和 cstring::format()成員函式的字串格式化語法,在 trace()巨集中,可以使用各種 mfc 類。例如

int m_age = 23;

cstring m_name("yiding");

trace("name = %s, age = %d\n", m_name, m_age);

除錯視窗輸出下列語句並換行

name = yiding, age =23

2.assert()巨集

assert()巨集語法如下:

asser(《條件表示式》);

如果條件表示式為真,則程式繼續執行;如果為假,則在該語句處終止程式執行,並彈出乙個對話方塊,顯示程式終止的行及所在檔案資訊下面一段**展示了如何使用 assert()巨集來校驗傳遞進來的引數。

void test(char* p, int size)

3.assert_valid()

assert_valid()巨集語法如下:

assert_valid(《指標》);

assert_valid()紅用於檢查指標和物件的有效性,對於一般指標,只檢查指標是否為空。對於 mfc 指標,還需呼叫cobject::assertvalid()成員函式,判斷物件合法性。assert_valid()巨集提示指標和物件無效的方式與 assert()巨集一樣,使用提示對話方塊輸出錯誤資訊。

assert_valid()巨集對於 cobject 派生類的校驗更為簡單。例如:

void cmview::test(cyview* pview)   //cmview 和 cyview 是 cobject 的派生類

4.dump()除錯函式

dump()函式是 cobject 類的乙個成員函式,呼叫該函式可以輸出物件內部資料成員的值。當程式除錯過程中希望檢查物件內部狀態時,該函式是非常有用的。dump()函式使用「<<」插入操作符輸出資料成員值。例如:

void cage::dump(cdumpcontext &dc) const

MFC中的選單

mfc的選單 1.相關類 cmenu類 封裝了選單控制代碼以及操作選單的api函式.2.cmenu類的使用.新增選單資源 載入選單資源 cmenu loadmenu 將選單新增到視窗 cwnd setmenu 3.cmenu的選單處理 on command on update command ui ...

qt中的選單QMenu QAction

qt中要建立選單,有三個類很重要 qmenubar qwidget parent 0 qmenu qwidget parent 0 qmenu const qstring title,qwidget parent 0 qaction qobject parent qaction const qstr...

Vs自定nuget push選單

1 net framework 需要準備 nuget.exe 和 nuget push.cmd 命名行 nuget 命令列 apikey 對應的key src 對應的位址 2 net core 不需要nuget.exe nuget 命令列 3.編輯vs 配置外部工具 配置自定義選單 右鍵專案屬性設定...