gpt4 book ai didi

c++ - 在资源文件中使用宏

转载 作者:可可西里 更新时间:2023-11-01 10:49:51 29 4
gpt4 key购买 nike

我想在我的 .rc 文件中使用#define 字符串。例如,假设我在我的 .rc 文件中#include 这个 .h 文件:

#if defined(RED_BUILD)
#define CAPTION_TEXT "Red Window"
#define PROMPT_TEXT "Red Prompt"
#else
#define CAPTION_TEXT "Blue Window"
#define PROMPT_TEXT "Blue Prompt"
#endif

在我的 .rc 文件中,假设我有对话框:

IDD_Dialog DIALOG 0, 0, 286, 258
STYLE WS_POPUP | WS_CAPTION
CAPTION "First " CAPTION_TEXT " Dialog"
BEGIN
LTEXT "First " PROMPT_TEXT, -1, 4, 80, 120, 8
LTEXT "Second " PROMPT_TEXT, -1, 4, 90, 120, 8
END

但是资源编译器不喜欢这样,给出了“BEGIN expected in dialog”。有什么方法可以让预编译器处理这个问题吗?

我当前的解决方法是在我的 .rc 文件中使用 #if defined(RED_BUILD),它可以工作,但并不理想,因为我有数百个提示需要更改。

最佳答案

最好的方法是维护不同的资源文件并编译它们,而不是在一个大的“ifdef`d”资源文件中处理所有内容。

关于c++ - 在资源文件中使用宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8646888/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com