社区
C++ 语言
帖子详情
请教一个问题
rayvon
2004-04-05 10:35:34
T *p = new T[5] 与T *p = (T)new char[sizeof(T)*5]
两者有何不同?请具体讲一下
...全文
19
4
打赏
收藏
请教一个问题
T *p = new T[5] 与T *p = (T)new char[sizeof(T)*5] 两者有何不同?请具体讲一下
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jp1984
2004-04-06
打赏
举报
回复
T *p = new T[5] //分配类型为T的,元素个数为五的数组空间
T *p = (T)new char[sizeof(T)*5]
/*这是错误的!!!因为左边是T*类型的指针,而右边强制转换char型的时候,为T类型,编译器会返回“cant invert T to T*”的出错信息。。*/
……………………………………………………………………………………………………
#include "stdafx.h"
#include "iostream"
using namespace std;
int main()
{
int* p=(int)new char[sizeof(int)*5];
cin>>*p;
cout<<*p;
}
/*c:\Documents and Settings\James\My Documents\Visual Studio Projects\sucker\sucker.cpp(12): error C2440: “初始化” : 无法从“int”转换为“int *”*/
……………………………………………………………………………………………………
/* 还有一种情况就是,你的(T)是作为可以省略的情况, 也是错的,因为左边是char*(数组等同于指针)而右边则是int*,这也是不行的。*/
// 你可以这样写,达到跟第一种一样的效果
¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥
#include "stdafx.h"
#include "iostream"
using namespace std;
int main()
{
int* p=(int*)new char[sizeof(int)*5];
cin>>*p;
cout<<*p;
} //*love myj*
¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥
maomaostevencao
2004-04-06
打赏
举报
回复
第一种方法:
申请类对象内存
调用构造函数初始化类对象
第二种方法:
仅仅申请了类对象的内存,没有调用构造函数初始化类对象。
这种方法后面还需要调用构造函数:for (i:0,5) new (p[i]);
另外,你的第二种方法的确打错了,也可能是你教材弄错了。
good luck!
rayvon
2004-04-05
打赏
举报
回复
没错啊,就是这样的。。。这是我们教材上的一个习题
LinuxPanther
2004-04-05
打赏
举报
回复
1.我觉得你,打错了一个地方,T *p =(T*)new char [sizeof(T)*5];
.......
我的感觉是没有什么不同了。
Python训练营103期开班典礼直播回放
#《5天Python闯关训练营》学习计划#挑战周期:12月16日—12月20日直播安排:开班典礼:12...完成相应的软件安装及环境搭建学习服务:12.16-12.20日为本课正式服务周期期间遇到学习
问题
可社群
请教
,群内安排助教老师答疑
向大家
请教
一个
问题
以下
问题
来自我们的真实需求,并加上在
一个
氛围尚可的 QQ 群讨论的补充,我们没有得出比较好的答案,特向大家
请教
。
每
一个
疑问背后都隐藏着至少
一个
盲点和学习的绝佳机会
请教
一个
问题
为什么用lombox的build构建
一个
对象内部持有的另外
一个
对象 用io的方式进行深克隆 拿到的两个内部对象是一样的 但是如果用set的方式给内部持有对象赋值 深克隆出来的就不是同
一个
对象 ...
向别人
请教
问题
,不要这样开头
前言 我们经常会有
请教
别人
问题
的时候,而下面这...毋庸置疑,你提问的目的自然是想得到解答,而上面三种提问方式都有
一个
共性,就是在看到上面的
问题
之后,仍然不知道具体
问题
是什么,而要简单回复之后才能得到真...
一个
tomcat部署多个应用,有几个JVM?
1、
一个
tomcat是
一个
进程,其中有很多线程(与有多少个app无关) 2、
一个
tomcat启动
一个
JVM,其中可以有...转自:http://blog.csdn.net/kyfxbl/article/details/11967535Question: 博主您好,
请教
一个
问题
,麻烦您...
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章