何时使用struct或class?

时间:2014-03-21 08:42:30

标签: c++ class struct

我正在研究OOP并使用C ++。我有一个类访问其他类/结构的对象。

struct data
{
   int a;
   int b;
   string str;
} sd;

class format 
{
   int x;
   void show()
   {
      cout << data.a << endl;         
   }      
};

哪一个最好在这里使用class或struct?

3 个答案:

答案 0 :(得分:1)

首先,它是struct,而不是strut

其次,您无法像a那样访问成员data.a,而是sd.a,因为您需要在实例上访问它,而不是在结构名称上访问它。

有关类和结构之间的详细差异,请参阅this SO question及其两个最佳评分答案。

答案 1 :(得分:1)

我使用这个惯例:

  • 结构只有成员才有意义直接操作
  • 一个类可能有复杂的成员分配规则

这有点适合默认的辅助功能规则。但正如之前在这篇帖子中所说,选择取决于惯例。

答案 2 :(得分:0)

取决于你的要求结构和类的唯一区别是在struct中所有成员默认是公共的,而在类的情况下是私有的