Sam*_*Sam 40 c++ struct class member-functions
我对结构和类之间的区别感到非常困惑,因为我似乎看到它们用于几乎相同的东西.我搜索了差异,我看到的唯一答案是默认情况下结构体有公共成员,默认情况下类有私有成员.但是,我的讲师刚刚告诉我结构不能包含成员函数.但我在互联网上看到很多线程,其中人们在结构中包含成员函数,并且具体说这样做是可以的.
我的讲师似乎坚持认为结构定义不具备功能,所以发生了什么?我唯一能想到的是,编译器可能会将结构中的函数更改为其他内容,以便它们在技术上不包含函数......这些矛盾是否有明确的答案?
Bri*_*ian 40
我搜索了差异,我看到的唯一答案是默认情况下结构体有公共成员,默认情况下类有私有成员.
是的,这是正确的.此外,默认情况下,结构的基础是公开继承的,而类的基数默认是私有地继承的.
将函数声明为结构的成员与将函数声明为类的成员具有完全相同的语义,除了您注意到的差异.在每种情况下,它们都被称为成员函数.