簡體   English   中英

如何在不更改代碼的情況下強制在 Visual C++ 中對 POD 類型進行值初始化?

[英]How to force value initialization for POD types in Visual C++ without changing code?

有沒有辦法在Visual C++發布模式下強制將 pod 類型初始化為0\\false\\nullptr

更具體地說,我不想更改我的代碼,只需使用初始化為0\\false\\nullptr. pod 類型編譯它0\\false\\nullptr.

我想要這個是因為我希望我們的系統是確定性的。

是的,值初始化會做到這一點。

struct pod {
    int a, b;
    char c;
    double d;
};

pod myPod = pod(); // Value-initialized, all members are 0.

C++11 還允許您在類定義中分配默認值,但 Visual Studio 尚不支持此功能。

struct pod { 
    int a = 0, b = 0;
    char c = 0;
    double d = 0.0;
};

pod myPod; // All members would be initialized to 0.

暫無
暫無

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

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