将结构的一部分分配给c中的另一个结构
assign parts of struct to another struct in c
我希望在c/c++中有这样的概念
struct first{
int a,b,c;
}my1;
struct second{
int a,b,c;
int extended;
}my2;
以某种方式能够拥有
my2=my1;
(意思是只复制相同的部分。保持扩展不变)
我想把它当作来解决
struct second{
first first_;
int extended;
}my2;
并具有
my2.first_ = my1;
但这对我来说有点难看。有更明确的解决方案吗?可能是延伸了一个结构什么的?
类似:
struct second : first
{
int extended;
second& operator=(const first& f)
{
first::operator=(f); extended = 0; return *this;
}
};
有点同样丑陋,但这里是:
my1 = *(first*)&my2;
您可以为struct second
:重载=
运算符
second & operator=(const first & s) {
this->a = s.a;
this->b = s.b;
this->c = s.c;
return *this;
}
相关文章:
- 为什么在没有显式默认构造函数的情况下,将另一个结构封装在联合中作为成员的结构不能编译
- 为什么将一个结构的引用设置为等于另一个结构只会更改一个数据成员?
- 从另一个 cpp 文件更改结构内、映射键内的变量
- 如何将一个结构的字符数组复制到结构的另一个字符数组中?
- 如何将数据从一个结构链接到另一个结构
- 是否可以使用智能指针成员设置具有另一个结构的结构?
- std::transform 将一个结构数组复制到另一个结构数组
- C++将结构复制到另一个程序的资源
- 结构新手,我对如何从 void 函数中返回值并将其放入另一个函数感到困惑
- 可以访问一个类中的播放器结构,但不能访问另一个类中的播放器结构
- 如何在另一个结构中初始化结构数组?
- 在另一个结构中声明内部结构会导致错误:结构使用无效
- 通过 C++ 中的另一个结构成员访问结构
- 难以从另一个结构中的函数返回结构
- 有没有办法将一个对象注入到另一个对象的结构中?
- 如何制作一个结构程序,在其中可以存储无限量的数据,以便每次您想要时都可以将另一个产品添加到列表中?
- 将一个结构的值复制到另一个结构
- 结构C++可以用 0 初始化,但不能用另一个 int 初始化
- 如何将矢量结构从一个标头文件传递到另一个标头文件中的类
- 是否可以定义一个在外部"C"块中继承另一个结构的结构?