c++中string可以定义为数组吗

我在编译的时候,在string的初始化的时候有错,但是不知道错在哪里,不完整的代码如下#include<iostream>usingstd::cin;usingstd::... 我在编译的时候,在string的初始化的时候有错,但是不知道错在哪里,不完整的代码如下
#include<iostream>
using std::cin;
using std::cout;
#include<string>
using std::string;

class reader
{
public:
reader(string readname,string num,string a[5],int n )
{
name=readname;
num=lend_num;

}

private:
string name;
string lend_num;
string bookname[10];
int m;

};
class data
{
protected:
string name;
string coding;

};
class book:public data
{
private:
string writer;
string in_num;
string publishing_house;
float money;

};
class materital:public data
{
private:
string zonghao;

};
main()
{
class rd[4];
string book[8]=("家","三国演义","雨夜","泡沫之夏","大约是爱","西游记","巴黎圣母院","九三年");

}
展开
 我来答
百度网友9dd49a5
推荐于2017-09-11 · TA获得超过390个赞
知道小有建树答主
回答量:188
采纳率:0%
帮助的人:167万
展开全部

        可以。但这视为string类的数组。

string st[10];

       意思是开10个string变量,以st为数组变量名。这时有点像二维字符数组。

读入:

cin >> st[0] >> st[1];

输出:

cout << st[2] << endl << st[3];//输出整串
cout << st[0][0] << st[0][1] << endl;//输出单个字符


基本操作与C字符数组类似,但自带许多实用函数,可以参照库<string>。

tips:

        c++String功能强,兼容性高,但是速度会慢些。对速度有要求的程序最好用字符数组。

暝霾
推荐于2017-09-13 · TA获得超过523个赞
知道小有建树答主
回答量:171
采纳率:0%
帮助的人:154万
展开全部
当然可以定义string数组,不过你main函数里的两个申明定义都错了,
按你的意思应该改成这样的:

#include<iostream>
using std::cin;
using std::cout;
#include<string>
using std::string;

class reader
{
public:
reader(string readname,string num,string a[5],int n )
{
name=readname;
num=lend_num;

}
reader();//这个为默认构造函数,可以不写

private:
string name;
string lend_num;
string bookname[10];
int m;

};
class data
{
protected:
string name;
string coding;

};
class book:public data
{
private:
string writer;
string in_num;
string publishing_house;
float money;

};
class materital:public data
{
private:
string zonghao;

};
void main()
{
reader *rd[4];
string book[8]={"家","三国演义","雨夜","泡沫之夏","大约是爱","西游记","巴黎圣母院","九三年"};

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
倒过来倒过来
2010-04-10 · TA获得超过2348个赞
知道小有建树答主
回答量:1025
采纳率:0%
帮助的人:618万
展开全部
c++中string可以定义为数组,此时sting数组存储的是各字符串的地址,没问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式