BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #44546同步于 2010/10/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

请问这个小程序为什么有问题?谢谢

zhangweitai
2010/10/8镜像同步7 回复
这里指针要分配空间吗? #include<iostream> using namespace std; class String{ public: String(){p = NULL;} String(char *str); void get(); void show(); private: char *p; }; String::String(char *str){ p =str; } void String::get(){ cin>>p; } void String::show(){ cout<<p; } int main(){ String string1,string2; cout<<"please input 2 strings:"<<endl; string1.get();string2.get(); string1.show();string2.show(); return 0; }
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
zwp机器人#1 · 2010/10/8
分配空间,不解释。
zhangweitai机器人#2 · 2010/10/8
敢问楼上在哪儿分配?我在String::String(char *str)下貌似不对,谢谢指教
zwp机器人#3 · 2010/10/8
【 在 zhangweitai 的大作中提到: 】 : 敢问楼上在哪儿分配?我在String::String(char *str)下貌似不对,谢谢指教 p=str肯定不对。memcpy。
a206206机器人#4 · 2010/10/8
re ls,构造函数内分配空间,然后拷贝内容
VisualUUBALL机器人#5 · 2010/10/9
String(){p = new char;} 试试
idOK机器人#6 · 2010/10/9
理论可行,这样讲不知道可不可以
lzlj机器人#7 · 2010/10/10
你主程序里的string1和string2调用的都是不带参数的构造函数啊 【 在 zhangweitai 的大作中提到: 】 : 敢问楼上在哪儿分配?我在String::String(char *str)下貌似不对,谢谢指教 : --