C ++结构函数

通常我们可以为C ++结构定义一个variables,如

struct foo { int bar; }; 

我们是否也可以为结构定义函数? 我们将如何使用这些function?

是的,除了默认访问级别(成员智能和inheritance智能)之外, structclass是相同的。 (和额外的含义class使用时,与模板)

一个类所支持的每个function都由一个结构体支持。 你会用同样的方法来使用它们作为一个类。

 struct foo { int bar; foo() : bar(3) {} //look, a constructor int getBar() { return bar; } }; foo f; int y = f.getBar(); // y is 3 

结构可以像类一样具有function。 唯一的区别是它们默认是公开的:

 struct A { void f() {} }; 

另外,结构体也可以有构造函数和析构函数。

 struct A { A() : x(5) {} ~A() {} private: int x; };