到目前为止,我已经阅读了带有和不带有指针的结构。我的问题是关于结构与类和主要的结合。我从 K&R 和 c++ 站点学到的是结构不能包含值。我要分配给成员的值将是常量。在几篇文章中,我读到我应该将结构放在类中,甚至放在私有中。我使用的设置是:
class C
{
struct something {const float m = 3} s;` //actually 12 members. Compiler doesn't accept values: "ISO C++ forbids initialization of member"
function foo(struct something s){ float m = s.m; <..do something..>}` //struct s actually used in several functions
};
int main(){C c;}
然后我创建了 2 个结构,并让第二个将值分配给第一个的成员,我觉得这很难看。但是为什么这会被 gcc 接受呢?那么我怎样才能以正确的方式只分配一次值,因为分配值必须在函数内部完成。顺便说一句,我使用的是 Ubuntu gcc-4.6.1。
谢谢你的回答。