社区
C++ 语言
帖子详情
请教一个问题
rayvon
2004-04-05 10:35:34
T *p = new T[5] 与T *p = (T)new char[sizeof(T)*5]
两者有何不同?请具体讲一下
...全文
52
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];
.......
我的感觉是没有什么不同了。
[算法笔记]如何证明
一个
问题
是NPC
问题
本文介绍证明
问题
为NPC
问题
的方法,先讲解归约、P和NP概念,证明分三步:先证
问题
是NP
问题
,再找NPC
问题
X证明X ≤ P Y,最后证X有解当且仅当Y有解。还给出课程安排、4 - COLOR染色等例子,分享做题经验并分析决策、搜索和最优
问题
关系。
你能不能复述一下我提的第
一个
问题
博客围绕询问第
一个
问题
的内容展开,博主询问对方自己第
一个
问题
是什么。
Leetcode——下
一个
排列
问题
本文介绍了
一个
算法
问题
——下
一个
排列的实现方法。该算法通过两次遍历找到可以进行交换的元素,并完成升序排列,实现原地修改数组的目标。文章提供了详细的步骤说明及Java代码实现。
【算法思想·数组】
一个
方法团灭nSum
问题
本文由浅入深介绍用
一个
函数解决所有 nSum 类型
问题
。先讲解 twoSum
问题
的算法思路,包括基本思路及避免结果重复的方法;接着阐述 3Sum、4Sum
问题
的解法,通过穷举和复用函数解决;最后提出可统一出 nSum 函数,还提醒调用前先对数组排序。
一个
火柴模式
问题
和
一个
火车运煤
问题
本文探讨了两个经典的编程趣味
问题
:火柴模式
问题
和火车运煤
问题
。火柴模式
问题
要求仅通过修改
一个
字符来调整输出结果,而火车运煤
问题
则考验如何通过最优策略运送最大数量的煤炭。
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章