社区
进程/线程/DLL
帖子详情
new对象数组失败,100分相送
zkszks
2004-11-22 09:49:04
struct A
{
virtual ~A(){}
virtual void Init(void)
{
//
}
};
struct B: public A
{
int i;
void Init(void)
{
//
}
};
若“A *pA = new B[10];”时,“&pA[1]”是无效的。
如B中无成员变量,则OK。
...全文
160
12
打赏
收藏
new对象数组失败,100分相送
struct A { virtual ~A(){} virtual void Init(void) { // } }; struct B: public A { int i; void Init(void) { // } }; 若“A *pA = new B[10];”时,“&pA[1]”是无效的。 如B中无成员变量,则OK。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
oyljerry
2004-11-22
打赏
举报
回复
多态是将父类的指针可以访问子类的成员,而楼主用子类来访问父类
oyljerry
2004-11-22
打赏
举报
回复
强制类型转换了
nlstone
2004-11-22
打赏
举报
回复
这样的做法是错误的...
A[1]会访问到一个错误的地址,因为编译器只会老实地以A++这种方式来访问下一个A
alphakiller
2004-11-22
打赏
举报
回复
你这样写再试试
A *pA;
B b = new B[10];
pA=(A*)(&b);
快乐鹦鹉
2004-11-22
打赏
举报
回复
你这个方法没有什么问题。使用时强制转换成B指针进行使用就没有问题了。
handwolf
2004-11-22
打赏
举报
回复
当然了,继承类有成员的话,大小肯定比父类大!
但是[]运算符是按照父类的大小来进行的!
楼主明白了没?
danyueer
2004-11-22
打赏
举报
回复
你的声明看起来没有错误,不过“&pA[1]”似乎是一个指向指针的指针,取这个对象该用 *pA[1] 吧?
zkszks
2004-11-22
打赏
举报
回复
主要是为了使用多态,有不有更好的?
快乐鹦鹉
2004-11-22
打赏
举报
回复
如果是无效指针那就有问题了,也不应该啊。
如果看不到i的值,那是肯定的。因为你看的是A对象,而不是B对象。强制转换为B就看到了。
快乐鹦鹉
2004-11-22
打赏
举报
回复
无效是指指针为无效指针,还是看不到i的值呢?
快乐鹦鹉
2004-11-22
打赏
举报
回复
“&pA[1]”是无效的。==》什么意思?你的“无效”指什么?
alphakiller
2004-11-22
打赏
举报
回复
刚刚在看深入浅出MFC,看看是不是这个问题:
你知道,衍生对象通常都比基础对象大(我是指内存空间),因为衍生对象不但继承其基础类别的成员,又有自己的成员。那么所谓的upcasting(向上强制转型):将会造成对象的内容被切割.
动环报警主机产品-DH-FSU6208U-F-使用说明书-V1.2.0
内容概要:该文档为动环报警主机DH-FSU6208U-F的使用说明书,详细介绍了设备的安装、接线、Web操作、本地操作、系统设置及安全配置等内容。设备集视频监控与动力环境监控于一体,支持多种传感器接入、报警联动、远程预览、存储管理及网络通信功能(如4G、P2P、国标28181协议等),并提供完善的安全机制,包括HTTPS、防火墙、账户锁定、音视频加密等,适用于机房、基站、数据中心等场景的综合监控管理。; 适合人群:具备基本网络与电气知识的工程技术人员、系统集成商、IT运维人员及安防设备安装维护人员。; 使用场景及目标:①用于机房、变电站、IDC数据中心等场所的环境与设备状态实时监控;②实现温湿度、烟雾、水浸、电力等异常状况的自动报警与远程通知;③通过本地或远程方式对设备进行配置、录像回放、日志查询及安全管理; 其他说明:使用前需严格按照安全须知操作,确保电源、接地、安装环境合规;建议定期更新固件并设置强密码,以保障系统稳定与数据安全。
【Python编程】Python API开发之RESTful与GraphQL设计
内容概要:本文深入对比RESTful与GraphQL两种API设计范式在Python中的实现,重点分析资源导向与查询导向在数据获取效率、版本控制、缓存策略上的差异。文章从HTTP方法语义(GET/POST/PUT/PATCH/DELETE)出发,详解Flask-RESTful的资源类路由映射、Marshmallow的序列化/反序列化校验、以及HATEOAS超媒体驱动的API发现机制。通过代码示例展示Graphene的Schema定义、Resolver解析函数的N+1查询问题与DataLoader批处理优化、以及GraphQL的订阅(Subscription)实时推送实现,同时介绍FastAPI的自动OpenAPI文档生成、Pydantic模型的请求体验证与响应序列化、以及REST API的版本控制策略(URL路径/请求头/内容协商),最后给出在微服务网关、移动应用后端、数据聚合层等场景下的API设计原则与性能优化建议。 直播下载:www.dtdwmp.com 直播下载:hongshida.cn 24直播网:fifa.krtw.cn 24直播网:www.lanshiglass.com 直播下载:www.jz-iot.com
Delphi 13.1控件之mydac-14.0.1-d37pro.exe
Delphi 13.1控件之mydac_14.0.1_d37pro.exe
r8168-8.056.02.tar.bz2
``` sudo apt update sudo apt install dkms build-essential linux-headers-$(uname -r) tar -vjxf r8168-8.056.02.tar.bz2 cd r8168-8.056.02 sudo ./autorun.sh sudo reboot lsmod | grep r816 ``` 如果返回的结果中,显示的是 r8168,那么就说明驱动已经成功切换,恭喜你! 如果仍然显示 r8169,说明可能还是在使用旧驱动。
科技中介服务机构如何在产业大脑中发挥资源整合能力?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
进程/线程/DLL
15,465
社区成员
49,169
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章