Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/125.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
何时使用结构或类? 我正在使用OOPS,使用C++。我有一个类访问另一个类/结构的对象 struct data { int a; int b; string str; } sd; class format { int x; void show() { cout << data.a << endl; } }; struct数据 { INTA; int b; 字符串str; }sd; 类格式 { int x; 无效显示() { cout_C++_Class_Struct - Fatal编程技术网

何时使用结构或类? 我正在使用OOPS,使用C++。我有一个类访问另一个类/结构的对象 struct data { int a; int b; string str; } sd; class format { int x; void show() { cout << data.a << endl; } }; struct数据 { INTA; int b; 字符串str; }sd; 类格式 { int x; 无效显示() { cout

何时使用结构或类? 我正在使用OOPS,使用C++。我有一个类访问另一个类/结构的对象 struct data { int a; int b; string str; } sd; class format { int x; void show() { cout << data.a << endl; } }; struct数据 { INTA; int b; 字符串str; }sd; 类格式 { int x; 无效显示() { cout,c++,class,struct,C++,Class,Struct,这取决于您的需求struct和class的唯一区别在于struct默认情况下所有成员都是公共的,而class是私有的首先,它是struct,而不是struct 其次,您不能像访问data.a那样访问成员a,而是访问sd.a,因为您需要在实例上访问它,而不是在结构的名称上访问它 有关class和struct之间的详细差异,请参见及其两个最佳答案。我使用以下约定: 一个结构只有可以直接操作的成员 类可能有复杂的分配成员的规则 这在某种程度上符合默认的可访问性规则。但正如本线程前面所述,选择取决于

这取决于您的需求struct和class的唯一区别在于struct默认情况下所有成员都是公共的,而class是私有的

首先,它是
struct
,而不是
struct

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

有关class和struct之间的详细差异,请参见及其两个最佳答案。

我使用以下约定:

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

这在某种程度上符合默认的可访问性规则。但正如本线程前面所述,选择取决于约定。

您无法访问
数据。
格式::show()中的
数据
是一种类型没有
支撑
,它是
结构
。这段代码甚至不编译。你也可以用你最喜欢的搜索引擎来搜索它。这里有很多像这样的问题。这完全是惯例,没有真正的技术区别(您可以使用
class
struct
表达相同的类型)相关:它甚至不依赖于需求,而是依赖于约定。