簡體   English   中英

C++結構元素個數(成員變量)

[英]C++ number of structure elements (member variables)

我有一個自動生成的結構類型,它是各種元素的容器。 由於元素的數量可能會有所不同(基於結構的生成方式),我想知道(最好在編譯時)當前生成的結構的元素數量。

根據一些輸入,結構可能如下所示:

typedef struct _autoGenStruct {
    int a,
    int b,
    int c
} autogenStruct

或者像這樣:

typedef struct _autoGenStruct {
    int a,
    int b,
    int c,
    int d
} autoGenStruct

在第一種情況下,我希望得到 3 個元素,在第二個 4 中。元素類型始終是整數。 有沒有辦法在 C/C++ 中做到這一點? 謝謝。

如果所有元素都是整數,那么您可以假設結構中沒有填充,因此成員變量的數量應該很簡單:

auto elements = sizeof(_autoGenStruct) / sizeof(int);

暫無
暫無

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

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