问题集合---《平时遇到的问题 + 参考解决方式》
NO.1---@20190514 windows下,vs2010調試程序出現“Cannot?find?or?open?the?PDB?file”
可以參考:有解釋說,上網查看原因,得知是程序輸出的地方是Windows系統,而不是vs2010。
所以調試的話需要調用系統的一些資源,要到microsoft官網上下載,這樣每次調試都比較耗費時間
(操作方法:Tools---Options---Debugging---Symbols, 將microsoft symbol servers 勾選上即可),因為每次調試會從官網下載符號服務文件吧。
解決辦法,可以按control+F5直接運行,而且這樣操作的話dos窗口就不會一閃而過了。
https://blog.csdn.net/envony/article/details/79820353
https://blog.csdn.net/win_turn/article/details/50468115
親測:設置完事后,運行一次后,再勾選掉,好用。
?
?
NO.2---@20190514 windows下,vs2010,LINK:fatal error LNK1123: 轉換到 COFF 期間失敗: 文件無效或損壞
可以參考,
https://blog.csdn.net/kevin_mqj/article/details/22981873
https://blog.csdn.net/iracer/article/details/51138135
第一步:將 項目——項目屬性——配置屬性——連接器——清單文件——嵌入清單 “是”改為“否”。若還不能解決問題進入第二步。
第二步:查看計算機是否為64bit操作系統,如是,繼續如下操作。
查找是否有兩個cvtres.exe。
C:\Program Files(x86)\Microsoft Visual Studio 10.0\vc\bin\cvtres.exe
C:\Windows\Microsoft.NET\Framework\v4.0.30319\cvtres.exe
右鍵屬性—詳細信息, 查看兩者版本號,刪除/重命名較舊的版本,或者重新設置Path變量。
親測:
先刪掉老版本的cvtres.exe,看是否能通。不能,則繼續將新版本的cvtres.exe的粘貼過來。
?
NO.3---@20190528 ? Visual Studio控制臺程序輸出窗口一閃而過的解決方法
之前遇到類似的情況,解決了。今天手殘你,用金山毒霸清理了一下垃圾,清空了,又出現這個問題。
如果出現調試窗口一閃而過的情況,會出現無法查看程序輸出結果。
為了解決這個問題,可以在程序的末尾加上一個系統調用語句:
1 int main(){ 2 printf("我不會黑屏了哈哈\n"); 3 system("pause"); 4 return 0; 5 }?另轉,“剛接觸 Visual Studio的時候大多數人會寫個Hello World的程序試一下,有的人會發現執行結束后輸出窗口會一閃而過,并沒有出現Press any key to continue的字樣。無論是在Visual Studio 2008、2010還是2012中都有這種情況出現,有些人可能會用下面兩種方法中的一種:
在程序代碼的最后加上system("pause")或者getchar()。其實這是屬于dos下的命令。 其實問題是你執行時按的是F5,而正確的應該是Ctrl+F5,這樣窗口就會顯示 Press any key to continue...這句話了。也可以看到程序運行的結果了。 因為,F5是Debugging模式,在這個模式下,當程序運行結束后,窗口不會繼續保持打開狀態。而Ctrl+F5是 Start Without Debugging模式,在這個模式下,就可以看到運行結果了。 如果你按Ctrl+F5仍然是一閃而過的話,那么請按照如下設置: 在工程上右鍵--->屬性--->配置屬性--->連接器--->系統--->子系統(在窗口右邊)--->下拉框選擇控制臺(/SUBSYSTEM:CONSOLE) 就OK啦~? ”? @ https://blog.csdn.net/sinat_32829711/article/details/55213626 《vs2010? c++ 創建動態庫DLL》遇到的問題: 參考(在Visual Studio中使用C++創建和使用DLL)https://blog.csdn.net/fightingforcv/article/details/4177339NO.4---@20190617 ??vs2010? c++ 創建動態庫DLL,調用時 編譯提示 找不到DLL?
?
NO.5---@20190617 ??vs2010? c++ 創建動態庫DLL,創建XXX.def 文件編譯報錯?
?
?
NO.6---@20190617 ??vs2010? c++ 創建動態庫DLL,創建XXX.def 文件編譯報錯?
?
參考解決@https://www.cnblogs.com/holyprince/p/4236586.html @https://blog.csdn.net/xk_snail/article/details/46757753 @https://blog.csdn.net/yuxiangsong/article/details/83016800
通過調用這個函數:
LoadLibrary出現的該問題。
原因 :工程只支持UNICODE字符
解決方法:
1、在解決方案資源管理器中的工程上右鍵屬性->配置屬性–>常規—>字符集---->使用多字節符字符集
2、說明,在VS2005以后的版本中默認是使用Unicode的,所以會出現很多以前版本沒有的編譯錯誤(實參與形參類型不匹配)。
?
NO.7---@20190617 ??vs2010? c++ 創建動態庫DLL,錯誤:Error:未定義標識符"_TCHAR"? ? 提示未定義標示符“printf” ?
原因:沒有將必要的庫或者頭文件添加進來。
方法:?添加頭文件 ?? #include <tchar.h> #include<stdio.h> ? ? 即可成功編譯
原文地址:http://blog.csdn.net/nemo2011/article/details/6744442
?
NO.8---@20190620 ? vs2010? 遍歷時報錯OpenCV Error: Assertion failed <dims <=2 && data && <unsigned >i0 < <unsigned>size.p[0] && <unsigned >< i1,....?
參考啟示:https://blog.csdn.net/sinat_36264666/article/details/77524628
最后參考解決:https://blog.csdn.net/cgf_909/article/details/43413421
問題在于:““”“這種錯誤的原因在于,訪問構造矩陣時越界了,所以報錯,例如:
cv::Mat mat1 = cv::Mat::zeros(480,640,CV_8UC1);
mat1.at<uchar>(481,643)
構造的mat1為640X480的矩陣,你卻訪問了643X481那就肯定會出錯,所以在每次訪問之前一定要 記得加上
if(i>=0 && i<mat1.cols && j>=0 && j< mat1.rows)
mat1.at<uchar>(j,i);
這樣 就可以保證你訪問的元素在這個行,列之內了。”“”
我的解決方法:
?
轉載于:https://www.cnblogs.com/carle-09/p/10867507.html
總結
以上是生活随笔為你收集整理的问题集合---《平时遇到的问题 + 参考解决方式》的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 测试用例设计之正交表法详解
- 下一篇: Linux命令大全(个人整理,如不全面望