簡體   English   中英

使用 C++ 控制台應用程序中內置的類的 MFC 編譯錯誤

[英]MFC compile error using classes built in C++ console app

我正在嘗試使用我在 C++ 控制台應用程序中編寫的代碼在 MFC 中構建一個分形應用程序。 我在 MFC 應用程序中創建了所有相同的類,然后單擊了構建(我沒想到它會起作用)

無論如何,它對 RGB.h 類和 RGB.cpp 類抱怨很多。
我需要更改項目配置中的某些內容嗎?

如果我構建控制台應用程序它工作正常,但顯然在嘗試使用 MFC 應用程序中的類時存在差異。

只是想知道我是否可以對這兩個錯誤做些什么,因為我不確定從哪里開始。

RGB.cpp

編譯器錯誤:應為 ;

RGB::RGB(double r, double g, double b) : r(r), g(g), b(b) {}

RGB.h

錯誤 C2143 語法錯誤:在“|”之前缺少“)”

RGB(double r, double g, double b);

這樣發布的代碼沒有問題。 但是RGB是一個宏,在 wingdi.h 中聲明,在包含 Windows.h 時會被引入。 它是這樣定義的:

#define RGB(r,g,b) ((COLORREF)(((BYTE)(r)|((WORD)((BYTE)(g))<<8))|(((DWORD)(BYTE)(b))<<16)))

此預處理器宏與用於該類型的符號發生沖突。 最容易為類型使用不同的符號,例如rgb

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM