我将用一个例子来描述我的问题。我有结构Triangle:
struct Triangle {
int perimeter;
double area;
list <mystruct> sides;
};
其中mystruct是:
struct mystruct {
int length;
}
有可能吗?有没有可能出现的问题?
答案 0 :(得分:1)
是的,这是可能的。实际上它是composition。您可以像这样使用它:
mystruct s;
s.length = 10;
Triangle t;
t.sides.push_back(s);
对象组合是一种组合简单对象或数据类型的方法 更复杂的。
答案 1 :(得分:0)
完全没问题。
std::list<>
编写/实现良好且可复制(甚至可移动),默认可构造等等,因此您可以在struct
中使用它而不必担心任何事情。
答案 2 :(得分:0)
几乎所有目的struct
和class
之间唯一重要的区别是默认访问说明符。