第一个结构体中的vector,另一个结构体中的vector的类型是第一个结构体,如何取出第一个结构体中的vector
时间: 2024-08-15 11:07:50 浏览: 40
得到一个field在结构体中的偏移量
如果第二个结构体中的 `vector` 类型是第一个结构体的指针或者引用,你可以通过这个指针或引用来访问和操作第一个结构体中的 `vector`。假设两个结构体分别是:
```cpp
struct ParentStruct {
std::vector<int> parentVector;
};
struct ChildStruct {
ParentStruct* childOfParent; // 或者 std::shared_ptr<ParentStruct>
};
```
然后,在 `ChildStruct` 中,你可以这样做来取第一个结构体的 `vector`:
```cpp
// 假设childStruct是一个ChildStruct类型的变量
int parentValue = childStruct->childOfParent->parentVector; // 如果是成员指针
// 或者
auto& parentVectorRef = *childStruct->childOfParent; // 如果是智能指针
int parentValue = parentVectorRef.parentVector;
```
这里的关键是通过指针或引用访问到 `ParentStruct` 的实例,并操作其 `parentVector`。
阅读全文