字符串变量为什么不能赋值字符数组??
例如:#include<string>#include<iostream>usingnamespacestd;classStudent//声明Student类{publi...
例如:
#include<string>
#include<iostream>
using namespace std;
class Student //声明Student类
{public :
Student(int n,string nam,char s ) //定义构造函数
{num=n;
name=nam;//字符串变量赋值字符数组
sex=s;
cout<<″Constructor called.″<<endl; //输出有关信息
}
void display( ) //定义成员函数
{
cout<<″num: ″<<num<<endl;
cout<<″name: ″<<name<<endl;
cout<<″sex: ″<<sex<<endl<<endl;
}
private :
int num;
char name[10];//此处按字符数组定义
char sex;
};
int main( )
{Student stud1(10010,″Wang_li″,′f′); //建立对象stud1
stud1.display( ); //输出学生1的数据
return 0;
}
这样编译时会提示错误!若把char name[10],改为string name;编译正常! 展开
#include<string>
#include<iostream>
using namespace std;
class Student //声明Student类
{public :
Student(int n,string nam,char s ) //定义构造函数
{num=n;
name=nam;//字符串变量赋值字符数组
sex=s;
cout<<″Constructor called.″<<endl; //输出有关信息
}
void display( ) //定义成员函数
{
cout<<″num: ″<<num<<endl;
cout<<″name: ″<<name<<endl;
cout<<″sex: ″<<sex<<endl<<endl;
}
private :
int num;
char name[10];//此处按字符数组定义
char sex;
};
int main( )
{Student stud1(10010,″Wang_li″,′f′); //建立对象stud1
stud1.display( ); //输出学生1的数据
return 0;
}
这样编译时会提示错误!若把char name[10],改为string name;编译正常! 展开
3个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询