共计 354 个字符,预计需要花费 1 分钟才能阅读完成。
代码
#include
#include
#include
#include
using GroupId = std::uint64_t;
using ReducedGroupId = GroupId;
struct Memo {std::optional GetReduceGroupId(const GroupId& group_id) {
// omit
return std::make_optional(group_id);
}
};
int main(int argc, char* argv[]) {std::vector tmp;
Memo memo;
GroupId group_id = 1;
const ReducedGroupId& reduced_group_id = memo.GetReduceGroupId(group_id).value();
std::cout <<"3.1.->|" << reduced_group_id << ":" << &reduced_group_id << std::endl;
tmp.push_back(4);
std::cout <<"3.2.->|" << reduced_group_id << ":" << &reduced_group_id << std::endl;
tmp.push_back(5);
std::cout <<"3.3.->|" << reduced_group_id << ":" << &reduced_group_id << std::endl;
return 0;
}
结果
3.1.->|1:0x7ffe4fcd3530
3.2.->|4:0x7ffe4fcd3530
3.3.->|5:0x7ffe4fcd3530
问题
- 3.1, 3.2, 3.3 为啥打印结果不一样?
正文完