65,198
社区成员




#include <iostream>
using namespace std;
struct student{
char *s;
char a[5];}st1;
void show(student &st);
const int change(int &k);
int main(){
student ss={"nihao ","o o "};
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
cout<<endl;
student st=ss;
show(ss);cout<<endl;
show(st);
cout<<endl;
int i=5;
int &j=change(i);//这里如果没有const在前面就会出错,但是为什么书本上的那个例子
//(也就是上面那个,不是我这个的)没有const
cout<<endl<<j;
return 0;}
void show(student &ss){
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
}
const int change(int &k){
int *p=new int ;
*p=k;
return *p;
}
[/quote]
(1) 你抄错了。
(2) 书太烂了。[/quote]
书本的是这个const sysop& clone (sysop& sysopref){
sysop *psysop=new sysop;
*psysop=sysopref;
return *psysop;
}
........
........
sysop &jol=clone(sysopr);
我没有抄错;
以及那本书是c++primer plus正版。[/quote]
《c++primer plus》确实是本烂书
好书是《C++Primer》[/quote]
啊,我好喜欢这本书的啊,你的意思是说书的这里是错的??[/quote]
你自己找个比较新的编译器试试呗,把原书的程序照抄,看看能不能编译。[/quote]
我在6.0中试了我的那段是错的(书本就那一段例子,是说明引用的返回要在函数结束后存在)#include <iostream>
using namespace std;
struct student{
char *s;
char a[5];}st1;
void show(student &st);
const int change(int &k);
int main(){
student ss={"nihao ","o o "};
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
cout<<endl;
student st=ss;
show(ss);cout<<endl;
show(st);
cout<<endl;
int i=5;
int &j=change(i);//这里如果没有const在前面就会出错,但是为什么书本上的那个例子
//(也就是上面那个,不是我这个的)没有const
cout<<endl<<j;
return 0;}
void show(student &ss){
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
}
const int change(int &k){
int *p=new int ;
*p=k;
return *p;
}
[/quote]
(1) 你抄错了。
(2) 书太烂了。[/quote]
书本的是这个const sysop& clone (sysop& sysopref){
sysop *psysop=new sysop;
*psysop=sysopref;
return *psysop;
}
........
........
sysop &jol=clone(sysopr);
我没有抄错;
以及那本书是c++primer plus正版。[/quote]
《c++primer plus》确实是本烂书
好书是《C++Primer》[/quote]
啊,我好喜欢这本书的啊,你的意思是说书的这里是错的??[/quote]
你自己找个比较新的编译器试试呗,把原书的程序照抄,看看能不能编译。#include <iostream>
using namespace std;
struct student{
char *s;
char a[5];}st1;
void show(student &st);
const int change(int &k);
int main(){
student ss={"nihao ","o o "};
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
cout<<endl;
student st=ss;
show(ss);cout<<endl;
show(st);
cout<<endl;
int i=5;
int &j=change(i);//这里如果没有const在前面就会出错,但是为什么书本上的那个例子
//(也就是上面那个,不是我这个的)没有const
cout<<endl<<j;
return 0;}
void show(student &ss){
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
}
const int change(int &k){
int *p=new int ;
*p=k;
return *p;
}
[/quote]
(1) 你抄错了。
(2) 书太烂了。[/quote]
书本的是这个const sysop& clone (sysop& sysopref){
sysop *psysop=new sysop;
*psysop=sysopref;
return *psysop;
}
........
........
sysop &jol=clone(sysopr);
我没有抄错;
以及那本书是c++primer plus正版。[/quote]
《c++primer plus》确实是本烂书
好书是《C++Primer》[/quote]
啊,我好喜欢这本书的啊,你的意思是说书的这里是错的??#include <iostream>
using namespace std;
struct student{
char *s;
char a[5];}st1;
void show(student &st);
const int change(int &k);
int main(){
student ss={"nihao ","o o "};
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
cout<<endl;
student st=ss;
show(ss);cout<<endl;
show(st);
cout<<endl;
int i=5;
int &j=change(i);//这里如果没有const在前面就会出错,但是为什么书本上的那个例子
//(也就是上面那个,不是我这个的)没有const
cout<<endl<<j;
return 0;}
void show(student &ss){
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
}
const int change(int &k){
int *p=new int ;
*p=k;
return *p;
}
[/quote]
(1) 你抄错了。
(2) 书太烂了。[/quote]
书本的是这个const sysop& clone (sysop& sysopref){
sysop *psysop=new sysop;
*psysop=sysopref;
return *psysop;
}
........
........
sysop &jol=clone(sysopr);
我没有抄错;
以及那本书是c++primer plus正版。[/quote]
《c++primer plus》确实是本烂书
好书是《C++Primer》#include <iostream>
using namespace std;
struct student{
char *s;
char a[5];}st1;
void show(student &st);
const int change(int &k);
int main(){
student ss={"nihao ","o o "};
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
cout<<endl;
student st=ss;
show(ss);cout<<endl;
show(st);
cout<<endl;
int i=5;
int &j=change(i);//这里如果没有const在前面就会出错,但是为什么书本上的那个例子
//(也就是上面那个,不是我这个的)没有const
cout<<endl<<j;
return 0;}
void show(student &ss){
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
}
const int change(int &k){
int *p=new int ;
*p=k;
return *p;
}
[/quote]
(1) 你抄错了。
(2) 书太烂了。[/quote]
书本的是这个const sysop& clone (sysop& sysopref){
sysop *psysop=new sysop;
*psysop=sysopref;
return *psysop;
}
........
........
sysop &jol=clone(sysopr);
我没有抄错;
以及那本书是c++primer plus正版。#include <iostream>
using namespace std;
struct student{
char *s;
char a[5];}st1;
void show(student &st);
const int change(int &k);
int main(){
student ss={"nihao ","o o "};
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
cout<<endl;
student st=ss;
show(ss);cout<<endl;
show(st);
cout<<endl;
int i=5;
int &j=change(i);//这里如果没有const在前面就会出错,但是为什么书本上的那个例子
//(也就是上面那个,不是我这个的)没有const
cout<<endl<<j;
return 0;}
void show(student &ss){
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
}
const int change(int &k){
int *p=new int ;
*p=k;
return *p;
}
[/quote]
(1) 你抄错了。
(2) 书太烂了。#include <iostream>
using namespace std;
struct student{
char *s;
char a[5];}st1;
void show(student &st);
const int change(int &k);
int main(){
student ss={"nihao ","o o "};
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
cout<<endl;
student st=ss;
show(ss);cout<<endl;
show(st);
cout<<endl;
int i=5;
int &j=change(i);//这里如果没有const在前面就会出错,但是为什么书本上的那个例子
//(也就是上面那个,不是我这个的)没有const
cout<<endl<<j;
return 0;}
void show(student &ss){
cout<<ss.s;
cout<<(int*) ss.s;
cout<<" "<<ss.a;
cout<<" ";
cout<<(int *)ss.a;
}
const int change(int &k){
int *p=new int ;
*p=k;
return *p;
}