在C ++源文件的另一个结构定义中,我有两个指向结构的指针变量(prevGuiMsg
和currGuiMsg
):
typedef struct
{
bool re_pop_required;
bool concurrent_popups;
MlGuiMsg* prevGuiMsg;
MlGuiMsg* currGuiMsg;
uint32_t first_popup;
uint32_t second_popup;
}RePopup;
M1GuiMsg
-结构在另一个C头文件中定义(我正在混合C和C ++代码)。指向该结构的指针作为参数传递给源文件中的函数,在此我希望将参数所指向的数据存储在指针变量prevGuiMsg
和currGuiMsg
中。
我希望明确地声明一个类型为struct RePopup
的变量,并在C ++源文件中初始化其成员以及声明:
RePopup rp = {false, false, 0, 0, 0, 0};
因此,我的问题是:是否可以/应该在另一个结构的显式声明中初始化指向零的结构的指针?
答案 0 :(得分:3)
您应该使用nullptr
而不是0
,但是初始化指向0的指针没有任何问题。