【发布时间】:2021-07-10 08:09:57
【问题描述】:
添加两个相同类型的结构数据并存储finalInstance
#include <iostream>
using namespace std;
typedef struct counter {
int Stx_cnt;
int End_cnt;
int data;
}
counter_t;
class Base {
public:
Base() {}
counter_t firstInstance;
counter_t secondInstance;
};
int main() {
Base obj1;
obj1.firstInstance = {
1,
2,
10
};
obj1.secondInstance = {
3,
4,
20
};
counter_t finalInstance = obj1.firstInstance + obj1.secondInstance;
return 0;
}
我在 firstInstance 和 secondInstance 中有一些数据,想添加 then 并存储在 finalInstance 中而不通过他们的成员访问,我的 finalInstance 应该有 {4,6,30};
【问题讨论】:
-
你的代码在哪里?
-
请不要使用文字图片,只需复制'n'粘贴到您的问题中。
-
无论如何,您都可以轻松地为您的类型重载
operator+。这方面的基础知识应该在任何 C++ 书籍中,示例遍布互联网。 -
您是否只是试图允许在结构上使用加号操作而不修改结构 itelt?这将相当简单:只需在命名空间范围之外实现操作。如果您尝试解决您的问题所问的问题,即在不使用成员名称(
Stx_cnt、End_cnt和data)的情况下实现添加,您可能需要对结构布局做出一些假设。