C++ 友元函数是否会增加C++;结构/类?

C++ 友元函数是否会增加C++;结构/类?,c++,C++,看起来发生的事情是,内存被用来在我的结构的每个实例中存储一个函数指针,用于其中声明的每个友元函数。我很难找到这方面的信息,在进行重大代码更改之前需要确认 所讨论的结构大约有1000万个实例,因此这会消耗大量内存 友元函数将大小添加到C++结构/类? 该语言没有详尽地指定影响类大小的因素。但实际上,通常没有理由认为友元函数需要影响类的大小。友元函数没有向结构添加大小 如果你一定要知道我愚蠢的根源,这样就不会重复了,我错用了一个字符指针数组而不是一个字符数组: char* OwnerName[20]

看起来发生的事情是,内存被用来在我的结构的每个实例中存储一个函数指针,用于其中声明的每个友元函数。我很难找到这方面的信息,在进行重大代码更改之前需要确认

所讨论的结构大约有1000万个实例,因此这会消耗大量内存

友元函数将大小添加到C++结构/类?


该语言没有详尽地指定影响类大小的因素。但实际上,通常没有理由认为友元函数需要影响类的大小。

友元函数没有向结构添加大小

如果你一定要知道我愚蠢的根源,这样就不会重复了,我错用了一个字符指针数组而不是一个字符数组:

char* OwnerName[20];
而不是

char OwnerName[20];

为什么不试试看呢?试试看。可能不会。Friend是一个编译时的东西。答案可能是不会的,因为Friend本身并没有添加任何代码,它只允许编译某些代码。如果您对特定代码有疑问,那么查看该代码会有所帮助。显示你正在做的改变结构的大小。呵呵,有趣。这是使用
std::array
std::vector
和/或
std::string
的另一个原因,你不能轻易混淆它们;)