Sample *p1=new Sample[2,3];什么意思????

loull 2010-07-02 12:14:19
#include<iostream>
using namespace std;

class Sample
{
public:
Sample(){cout<<(x=0);}
Sample(int i,int j){cout<<(x=i+j);}
~Sample(){cout<<++x;}
private:int x;
};
void main()
{
Sample *p1=new Sample[2,3];
delete[] p1;,
}


//运行结果是0001111
//结果多组数据测试,只跟方括号右边的数有关
//为什么??????????????????????????????????????
...全文
246 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
loull 2010-07-02
  • 打赏
  • 举报
回复
果断睡觉去
loull 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 steedhorse 的回复:]

引用 10 楼 lll5210000 的回复:
老师讲的粗略,不涉及应用就很容易被忽视

唉,你们老师也真是的,讲课讲得粗略,考试却只挑不怎么用到的细枝末节。
[/Quote]

惭愧啊,问了下成绩不错的几个同学,都说不知道哎
晨星 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 lll5210000 的回复:]
老师讲的粗略,不涉及应用就很容易被忽视
[/Quote]
唉,你们老师也真是的,讲课讲得粗略,考试却只挑不怎么用到的细枝末节。
loull 2010-07-02
  • 打赏
  • 举报
回复
老师讲的粗略,不涉及应用就很容易被忽视
liutengfeigo 2010-07-02
  • 打赏
  • 举报
回复
我老师讲了,但是谁写这样的代码不是折磨人啊,典型中国特色的题目。
晨星 2010-07-02
  • 打赏
  • 举报
回复
呵呵,难道你们老师都不讲逗号表达式?
liutengfeigo 2010-07-02
  • 打赏
  • 举报
回复
知道了就结贴吧。
loull 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 steedhorse 的回复:]

方括号不是函数调用的语法,圆括号才是。因此调的不是那个双参构造函数。
“2,3”是个逗号表达式,而逗号表达式的值就是表达式中最后一项的值。
[/Quote]

好像是正解啊,
刚测试了下Sample *p1=new Sample[2,4,5,3];结果还是一样的
~~3Q!
晨星 2010-07-02
  • 打赏
  • 举报
回复
方括号不是函数调用的语法,圆括号才是。因此调的不是那个双参构造函数。
“2,3”是个逗号表达式,而逗号表达式的值就是表达式中最后一项的值。
loull 2010-07-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lthyxy 的回复:]

Sample *p1=new Sample[2,3];
就是
Sample *p1=new Sample[3];
????
[/Quote]
刚测试了下
是的
loull 2010-07-02
  • 打赏
  • 举报
回复
明天就考试了。。。。
主要是这个问题还真不知道
liutengfeigo 2010-07-02
  • 打赏
  • 举报
回复
Sample *p1=new Sample[2,3];
就是
Sample *p1=new Sample[3];
????
lvshaoqing 2010-07-02
  • 打赏
  • 举报
回复
等待中。。。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧