一个关于指向对象的指针的问题。

xiaoxixing 2003-10-20 03:05:14
我定义了一个类
class test2
{
public:
int c1;
};

void main()
{
test2 * T;
T->c1=10;
}
编译通过,但执行时报错“0x004010cb指令调用oxcccccccc内存,该内存不能为written”.
为什么呢?
...全文
54 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wyd124 2003-10-20
  • 打赏
  • 举报
回复
定义了指针,却没有初始化就使用,这时候指针所指的地址是无效的,所以错误。
Jinhao 2003-10-20
  • 打赏
  • 举报
回复
哇,经典错误~~
jhyu 2003-10-20
  • 打赏
  • 举报
回复
悬浮指针
xiaoxixing 2003-10-20
  • 打赏
  • 举报
回复
一时糊涂,居然犯这种错误,罪过,罪过。
liuwillfly1 2003-10-20
  • 打赏
  • 举报
回复
改为
void main()
{
test2 * T=new test2;
T->c1=10;
delete T;
}
fierygnu 2003-10-20
  • 打赏
  • 举报
回复
楼主对指针的连接有误,参考:
http://chinaunix.net/forum/viewtopic.php?t=122740
Hot_Forever 2003-10-20
  • 打赏
  • 举报
回复
test2 *T=new test2();
你原先的用法根本就没有产生一个test2的对象,指针指着空气呢:)
daizh 2003-10-20
  • 打赏
  • 举报
回复
test2 * T对象没有初生化,应该这样test2 * T = new test2;

64,439

社区成员

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

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