你是定义方法了一行两列的二维数组,不过赋初值赋了两行,数组越界了,如果是inta
编程语言中的字符串,用双引号引出声的几个字符.如#34abc#34,#34两天34。
string类是决不可变(record)的,对string类的任何改变,是直接返回两个新的string类对象。
这样的话把string类的脚注传达消息给一个方法,该方法对string的任何改变,对原直接引用打向的对象没有任何影响,这一点和基本都数据类型几乎完全一样。
strings1,s2s1#34abc#34s2s1s2#34def#341、用法string类的构造函数:
string(constchar*s)
//用c字符串s初始化string(intn,charc)
//用n个字符c系统初始化当然了,string类还接受设置构造函数和复制构造函数,如fieldnames1;strings2#34hi~#34;大都对的的写法。
当构造的string太长而不能怎样表达时会一抛length_error极其。2、string类的字符操作:
constcharampoperator[](intn)constconstcharampat(intn)constcharampoperator[](intn)charampat(intn)operator[]和at()均回当前字符串中第n个字符的位置,但as函数需要提供范围检查,当越界时会掷下土爆_with_range十分,下标运算符[]不提供给检查访问。constchar*data()const//直接返回一个非null重新开启的c字符数组constchar*c_str()const//赶往一个以null强制停止的c字符串int全部复制(char*s,intn,intpos0)const//把当前串中以pos开始的n个字符拷贝到以s为回到起始位置的字符数组中,返回实际中拷入的数目。