C++ 相互分配结构是否存在潜在问题?

C++ 相互分配结构是否存在潜在问题?,c++,struct,assign,C++,Struct,Assign,如果我只是有一个简单的结构,如以下所示,其中成员变量的类型可以是任何内置类型或以前创建的类: using TypeA = ..sometype1; using TypeB = ..sometype2; struct Relation{ TypeA A; TypeB B; }; int main(){ Relation x; Relation y; ...some code doing stuff to x and y.. x=y; ..

如果我只是有一个简单的结构,如以下所示,其中成员变量的类型可以是任何内置类型或以前创建的类:

using TypeA = ..sometype1;
using TypeB = ..sometype2;

struct Relation{
    TypeA A;
    TypeB B;
};

int main(){
    Relation x;
    Relation y;
    ...some code doing stuff to x and y..
    x=y;
    ...some more code...
}

它是否总是编译并执行预期任务,这意味着它只能执行一个可能的任务,即将y中的精确数据分配到x?在某些情况下,我必须小心处理此类赋值吗?

struct或
class
类型的对象并不特殊,基本上与其他类型的注意事项相同。哪些问题可能适用,哪些问题可能不适用,取决于成员,因为默认的分配操作是按成员分配的。如果您需要不同的行为,您可以通过提供自己的赋值运算符来定制此行为。

struct或
class
类型的对象并不特殊,与其他类型的注意事项基本相同。哪些问题可能适用,哪些问题可能不适用,取决于成员,因为默认的分配操作是按成员分配的。如果你需要不同的行为,您始终可以通过提供自己的赋值运算符来自定义此操作。

只需小心使用隐藏间接的s即可。只需小心使用隐藏间接的s即可。我是否通过在类中创建复制构造函数和赋值运算符来自定义此操作?我是否通过创建复制构造函数和课堂上的赋值运算符?