unresolved external symbol __report_rangecheckfailure 解決思路
__report_rangecheckfailure 是用來檢查堆棧緩存溢出的,如果編譯的時候打開GS(project property--》Configuration properties--》c/c++--》Code generation--》Buffer security check)選項時(GS編譯選項解析),編譯器將爲你加入檢測函數堆棧緩存溢出錯誤額外代碼。具體實現在window下的運行時庫文件msvcrt.dll中。而這些檢查堆棧緩存溢出的代碼中在msvcrt11.dll及以後版本中都會調用到__report_rangecheckfailure 函數,所以當你用vs2010及以前版本進行開發,並使用了由vs2012及以後編譯器編譯的庫文件時,在鏈接的時候就會報這樣的錯誤。
解決辦法:
一、用當前vs重新編譯庫文件;
二、編譯庫文件的時候關閉GS選項;
三、使用vs2012及以上版本進行開發;