2010-10-06 219 views
2

我在做一個應用程序,並想測試我剛剛做的toString方法。我正在使用Visual c + + 2008.有沒有辦法看到控制檯輸出沒有控制檯窗口?如在「輸出」面板中?看到控制檯輸出沒有控制檯?

謝謝

+0

你有沒有看着單元測試? – strager 2010-10-06 03:22:03

+0

你試過對數? – 2010-10-06 04:41:54

回答

1

如果你打電話OutputDebugString,當你運行在VS ++程序就會顯示在輸出窗口的字符串。大多數其他調試器(以及其他一些監控應用程序等)也可以/將顯示這樣的字符串,但是當您在沒有調試器(或類似的東西)的情況下運行程序時,輸出將被忽略。

1

乾淨的選項是打印出來的文件。

ofstream fout(test.txt); 
fout << widget.toString() << endl; 
0

添加System.Diagnostics,您可以使用Debug Classes靜態方法寫入輸出窗口。即

Debug.Write("bleh"); 
    Debug.WriteLine("bleh"); 

什麼都沒有。

+0

再一次,謝謝,但不是.Net – jmasterx 2010-10-06 03:44:20

1

如果針對Windows應用程序打印到stdoutstderr,仍然可以通過重定向訪問輸出。

例如:

foo.exe > file.txt 

,或者如果你有一個Windows version of cat,你可以這樣做:

foo.exe | cat 
+0

Upvote,因爲我可以使用它來從我的一個導出函數的RunDLL32運行中捕獲「標準輸出」。 – 2010-11-24 16:05:29