游戏开发论坛

 找回密码
 立即注册
搜索
楼主: weisite

问个问题(比较弱)

[复制链接]

33

主题

669

帖子

669

积分

高级会员

Rank: 4

积分
669
QQ
发表于 2004-10-15 13:06:00 | 显示全部楼层

Re:问个问题(比较弱)

因为cdval是const,而ptr只是普通的指针,如果它得到了const的地址,那么const就没有意义了,你将ptr改为const doublie *ptr = &cdval.

26

主题

324

帖子

325

积分

中级会员

Rank: 3Rank: 3

积分
325
QQ
 楼主| 发表于 2004-10-15 17:57:00 | 显示全部楼层

Re: Re:问个问题(比较弱)

游戏战士: Re:问个问题(比较弱)

我想的等号运算符是这样实现的
char* operator = (const char* c)
{
char *p;
p= new char[strlen(c)+1...


难道说,字符串常量特殊吗?其它的文字常量都是不可寻址的啊,为什么它会返回“第一个元素的地址,一个const char*”呢?

26

主题

324

帖子

325

积分

中级会员

Rank: 3Rank: 3

积分
325
QQ
 楼主| 发表于 2004-10-16 20:49:00 | 显示全部楼层

Re: 问个问题(比较弱)

为什么没人帮帮小弟呢? [em13] [em19]

13

主题

978

帖子

978

积分

高级会员

Rank: 4

积分
978
发表于 2004-10-18 10:03:00 | 显示全部楼层

Re:问个问题(比较弱)

21楼说的实际上是非法修改内存的错误,但是c++不管这个(不然哪里来那么多溢出漏洞)

26

主题

324

帖子

325

积分

中级会员

Rank: 3Rank: 3

积分
325
QQ
 楼主| 发表于 2004-10-22 20:50:00 | 显示全部楼层

Re: Re:问个问题(比较弱)

seer: Re:问个问题(比较弱)

21楼说的实际上是非法修改内存的错误,但是c++不管这个(不然哪里来那么多溢出漏洞)


可是偶的问题呢?? [em17]

139

主题

2005

帖子

2057

积分

金牌会员

Rank: 6Rank: 6

积分
2057
QQ
发表于 2004-10-22 20:56:00 | 显示全部楼层

Re:问个问题(比较弱)

char* op=(char*)是不能重载的,而且char*=char*并没有拷贝字符串,只是地址变了……所以拷贝还是要用strcpy的
http://www.autsak.com/X_AdvCom_Get.asp?UserID=23

18

主题

573

帖子

573

积分

高级会员

Rank: 4

积分
573
发表于 2004-10-22 22:08:00 | 显示全部楼层

Re:问个问题(比较弱)

weisite,首先,我想问一下你怎么知道字符串常量"haha"就是“返回第一个元素的内存地址,一个const char*类型”。我觉得它只是一个常量,不存在const属性(当然,也可能是我学艺不精),只有变量才有const属性,这个“haha”只是表现为内存中的一块由编译器分配好的内存,不存在const属性。第二,我觉得这是C遗留下来的问题,因为在C中,不存在const问题,所以我觉得可能是为了和C兼容才保留这些的。

26

主题

324

帖子

325

积分

中级会员

Rank: 3Rank: 3

积分
325
QQ
 楼主| 发表于 2004-10-22 22:33:00 | 显示全部楼层

Re: Re:问个问题(比较弱)

william9527: Re:问个问题(比较弱)

weisite,首先,我想问一下你怎么知道字符串常量"haha"就是“返回第一个元素的内存地址,一个con...

我是在《c++ Primer》中看到这么说的,我也一直觉得很奇怪,我看的是中文版,不知道是不是印刷或是笔误,所以无限 [em24]中……

18

主题

573

帖子

573

积分

高级会员

Rank: 4

积分
573
发表于 2004-10-22 23:22:00 | 显示全部楼层

Re:问个问题(比较弱)

我以前看到的也是这本书,多看看其他的书吧!还有就是这本书上也没有说“haha”这类的字符串是const类型的呀!

26

主题

324

帖子

325

积分

中级会员

Rank: 3Rank: 3

积分
325
QQ
 楼主| 发表于 2004-10-23 00:27:00 | 显示全部楼层

Re: Re:问个问题(比较弱)

william9527: Re:问个问题(比较弱)

我以前看到的也是这本书,多看看其他的书吧!还有就是这本书上也没有说“haha”这类的字符串是const类型的呀!


《C++ Primer》第四章 4.1节一开始就说啊!原话为:“melancholia”的结果是字符串第一个元素的内存地址,它的类型是const char*。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-23 00:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表