shared_ptr typedef struct多种方式
时间: 2023-09-04 07:10:48 浏览: 117
C++ 基础知识总结_终稿_1241
可以使用以下方式来定义一个结构体,并将其封装在一个 shared_ptr 中:
1. 使用 struct 关键字和 typedef 关键字:
```c++
typedef struct MyStruct {
int x;
int y;
} MyStruct;
std::shared_ptr<MyStruct> ptr = std::make_shared<MyStruct>();
ptr->x = 10;
ptr->y = 20;
```
2. 使用 typedef 关键字和匿名 struct:
```c++
typedef struct {
int x;
int y;
} MyStruct;
std::shared_ptr<MyStruct> ptr = std::make_shared<MyStruct>();
ptr->x = 10;
ptr->y = 20;
```
3. 使用 C++11 的 struct 关键字和 typedef 关键字:
```c++
typedef struct {
int x;
int y;
} MyStruct;
std::shared_ptr<MyStruct> ptr = std::make_shared<MyStruct>();
ptr->x = 10;
ptr->y = 20;
```
4. 使用 C++11 的 struct 关键字和 using 关键字:
```c++
struct MyStruct {
int x;
int y;
};
using MyStructPtr = std::shared_ptr<MyStruct>;
MyStructPtr ptr = std::make_shared<MyStruct>();
ptr->x = 10;
ptr->y = 20;
```
无论使用哪种方式,最终都将得到一个封装在 shared_ptr 中的结构体指针。
阅读全文