V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ysc3839  ›  全部回复第 14 页 / 共 571 页
回复总数  11419
1 ... 10  11  12  13  14  15  16  17  18  19 ... 571  
memcpy 是原样拷贝其中的值,MyStruct 和 old::MyStruct 的内存结构都不一样,原样拷贝还是不一样的,并不能进行转换,当然是不行的。
这个例子最大的问题还不是转换,而是没办法得知外部传进来的是新的还是旧的。

这种情况的正确做法是,结构体开头用一个字段保存结构体大小,然后当结构体发生改变时,要确保与之前版本的大小都不一样,这样就可以通过大小来区分不同版本了。
```
#include <cstdio>

struct MyStruct_V1 {
size_t size;
int a;
float b;
};

struct MyStruct_V2 {
size_t size;
float b;
int a;
double c;
};

void PrintMyStruct(const void* p) {
auto size = *reinterpret_cast<const size_t*>(p);
if (size == sizeof(MyStruct_V1)) {
auto structV1 = reinterpret_cast<const MyStruct_V1*>(p);
printf("MyStruct_V1: a=%d b=%f\n", structV1->a, structV1->b);
} else if (size == sizeof(MyStruct_V2)) {
auto structV2 = reinterpret_cast<const MyStruct_V2*>(p);
printf("MyStruct_V2: b=%f a=%d c=%f\n", structV2->b, structV2->a, structV2->c);
}
}

int main() {
MyStruct_V1 structV1 = {
sizeof(structV1),
233,
466,
};
PrintMyStruct(reinterpret_cast<void*>(&structV1));
MyStruct_V2 structV2 = {
sizeof(structV2),
233,
466,
699,
};
PrintMyStruct(reinterpret_cast<void*>(&structV2));
}
```
@hefish 花了钱也不一定是正版,比如那些几块钱的激活码大概是一码多卖的,可能是违反许可协议的。
注意问清楚转运公司给不给寄带电池的,有的是不给的,甚至有的只要是电子产品都不给。
100 天前
回复了 airchaoz 创建的主题 问与答 预算 3000 左右推荐一个能用 esim 卡的手机
我在转转买了二手的美版 iPhone SE 3 ,1500 元左右,不过不好说靠不靠谱,转转验机说是没换过配件,外观划痕较多,目前使用了 8 个月了没什么问题。
看源代码直接用 IDA Pro 反编译呀,用文本编辑器当然看不到。
@yyzh 不怂的话直接用 CentOS 9 的 glibc 也行,我选 CentOS 8 只是觉得版本接近
Wireshark 抓包看看?
比较稳的方案就是用 Docker 跑。
不那么稳的方案是下载 CentOS 8 的新版 glibc ,然后 patch node 可执行文件让其使用新版 glibc 。我目前就是在用这个方法解决 vscode 远程连不上的问题。
102 天前
回复了 ahdung 创建的主题 问与答 如何修改机顶盒固件默认分辨率?
把固件以及设置改分辨率界面的截图发出来看看?
感觉是 CPU 坏了,什么 CPU ?
103 天前
回复了 nnegier 创建的主题 NVIDIA Nvidia 显卡怎么选呢,有实际需求?
@nnegier 你现在用的是什么内存?海力士 M-Die/A-Die 基本上都很能超,不一定要更换。
103 天前
回复了 nyxsonsleep 创建的主题 问与答 二进制程序获取源码
IDA Pro F5 反编译
103 天前
回复了 life90 创建的主题 游戏 黑神话的游戏测试工具,各位能打开么?
@life90 不确定是不是 Intel 处理器的问题,但是笔记本电脑应该不受影响。
我用 7950X+4090 Win10 系统是没问题的。
104 天前
回复了 life90 创建的主题 游戏 黑神话的游戏测试工具,各位能打开么?
电脑什么配置?
为什么要静态编译?原始需求是什么?
104 天前
回复了 xiaomayi000 创建的主题 Android android 上有什么好用的 epub 阅读器?
@zoharSoul 我在用静读天下看 Google Play 图书的 epub ,除了中文不支持竖排(我也不希望这么显示),似乎没什么问题
104 天前
回复了 xiaomayi000 创建的主题 Android android 上有什么好用的 epub 阅读器?
我在用静读天下,免费版用 Blocker 禁用一些服务就能屏蔽广告
第一个视频鼠标似乎一直在动,没有演示出鼠标不动的情况。
第二个视频,卡的时候看看任务管理器详细信息,哪个进程占用 CPU 最高?
另外“重置系统”指的是在设置里重置吗?不建议使用这个,因为清理不干净,建议重装系统,可以的话建议试试安装 Windows 10 。
104 天前
回复了 inu1255 创建的主题 Windows [求推荐] windows 上有什么好的进程守护软件
给 pm2 提个 pr 隐藏窗口启动吧
1 ... 10  11  12  13  14  15  16  17  18  19 ... 571  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5926 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 5693ms · UTC 06:09 · PVG 14:09 · LAX 22:09 · JFK 01:09
Developed with CodeLauncher
♥ Do have faith in what you're doing.