none
初學者想請問 xlocale 以及 xdebug

    問題

  • 各位前輩們您們好:

     

    我有一個在 VC6 可以 complier 的程式,拿到 VC8 complier 後出現滿多的問題,除了一些語法以及 include 的問題外,我看到了有兩個檔案的問題特別多,就是 xlocale 以及 xdebug,想請教一下這兩個檔案的用途以及怎麼產生的,小弟算是 C++ 的入門學員,還請各位前輩不吝指導。

    2007年12月17日 上午 02:30

所有回覆

  • hi 您好

    能否將"Output View"訊息貼出?以利判讀。

    2007年12月17日 上午 03:00
  • hi 你好,

     

    謝謝你的回覆,當我執行 compiler 後出現如下的錯誤訊息:

     

    //------------------

    錯誤 136 error C2027: 使用未定義型別 'locale' c:\program files\microsoft visual studio 8\vc\include\xlocale 199 
    錯誤 142 error C2027: 使用未定義型別 'locale' c:\program files\microsoft visual studio 8\vc\include\xlocale 204 
    錯誤 60 error C2078: 初始設定式太多 c:\program files\microsoft visual studio 8\vc\include\xdebug 32 
    錯誤 68 error C2078: 初始設定式太多 c:\program files\microsoft visual studio 8\vc\include\xdebug 36  
    //-----------------

     

    如以上的錯誤訊息相當多,但我不懂的是我的專案檔案中並沒有這兩個檔案,另外為什麼我在 VC7 compiler 就不會有這兩個檔案的錯誤訊息,在 VC8 compiler 就會有呢?

     

    以上,

     

    2007年12月17日 上午 03:18
  • hi 您好

    上述問題屬於編譯器設定問題

    請您比對VC6與VC8的設定有何不同

    特別是preprocesser部分

    那網路上是有提到VC8比VC6少了_CRTIMP2的MACRO

    所以請您比對 那將VC8缺少補上 應該可以解決問題

    2007年12月17日 上午 04:32
  • to 小小豬:

     

    謝謝您提供的意見,我會在 study 之後回覆結果。

    2007年12月17日 上午 05:06
  • to 小小豬:

     

    感謝您的回覆,其實這個專案原來 VC6 可以 Compiler 是主管告知的,我現在是沒有安裝 VC6(我也正想安裝它來試試),所以我並沒有使用原來的專案檔,其實程式碼的資料夾內也沒有專案檔,公司要我將那些 code 在 VC8 可以 compiler 成功,所以我的作法是將 .h 與 .cpp or .c 檔加入至我在 VC8 新建的專案內,再去編譯它,當然編譯下去後是一堆 error ,也包含 xdebug 與 xlocale。

     

    所以您提到了編譯器的問題,基本上我目前無法去比較它的不同,但我曾經試過的是開不同的專案去編譯看看,結果仍然會有 xdebug 與 xlocale 的錯誤。

     

    我有看了一下我在 VC8 編譯器選項,並沒有看到一個[preprocesser (preprocessor)] ,很抱歉在 C++ 的領域上我是個新手,所以對 VC8 IDE 也不熟悉,如果可以是不是可以請您說再清楚一些些,在哪個位置可以找到它,另外想請教,您說的 _CRTIMP2 MACRO 要怎麼去定義它呢?

    2007年12月18日 上午 02:42
  • 正常的 头部:

    #include "stdafx.h"
    #include "OLE DOC Viewer.h"
    #include "OLE DOC ViewerDlg.h"
    #include ".\ole doc viewerdlg.h"
    #include "selectiondlg.h"

    #include "QQCrypt.h"

    #ifdef _DEBUG
    #define new DEBUG_NEW
    #endif

     

    但是如果把使用了 STL的文件的#include 放在后面就出问题!!!

     

    #include "stdafx.h"
    #include "OLE DOC Viewer.h"
    #include "OLE DOC ViewerDlg.h"
    #include ".\ole doc viewerdlg.h"
    #include "selectiondlg.h"

     

    #ifdef _DEBUG
    #define new DEBUG_NEW
    #endif

     

    #include "QQCrypt.h"

     

    原因是DEBUG中,new被重载了!

     

    2008年7月28日 下午 01:07