![](https://lstatic.shangxueba.com/jiandati/h5/images/m_q_title.png)
Dim s1 As String="goodstudent" 下列String类函数中,计算错误的是________。
A.s1.Insert("##",5)="good##stuent
B.s1.Remove(4,5)="goodnt"
C.s1.Replace("d","8")="goo8stu8ent"
D.s1.Substring(3,4)="dstu"
A.s1.Insert("##",5)="good##stuent
B.s1.Remove(4,5)="goodnt"
C.s1.Replace("d","8")="goo8stu8ent"
D.s1.Substring(3,4)="dstu"
试题7:编写类String 的构造函数、析构函数
和赋值函数,已知类String的原型为:
class String
{
public:
String(const char *str = NULL); // 普通构造函
数
String(const String &other); // 拷贝构造函数
~ String(void); // 析构函数
String & perate =(const String &other); // 赋值
函数
private:
char *m_data; // 用于保存字符串
};
已知String类定义如下:
class String
{
public:
String(const char *str = NULL); // 通用构造函数
String(const String &another); // 拷贝构造函数
~ String(); // 析构函数
String & perater =(const String &rhs); // 赋值函数
private:
char *m_data; // 用于保存字符串
};
尝试写出类的成员函数实现。
A.str.IndexOf("n")=2
B.str.IndexOf("n")=3
C.str.IndexOf("n")=8
D.str.IndexOf("n")=7
执行语句“string str("abc");”时,系统会自动调用string类的构造函数()。
A. string()
B. string(const char *s)
C. string(const string &str)
D. string(size_type n, char c)
阅读下列程序说明和C++程序,把应填入其中(n)处的字句,写对应栏内。
【说明】
下面的程序实现了类String的构造函数、析构函数和赋值函数。
已知类String的原型为:
class String
{
public:
String(coust char * str = NULL); //普通构造函数
String(const String &other); //拷贝构造函数
~String(void); //析构函数
String & perate =(const String &other); //赋值函数
private:
char * m_data; // 用于保存字符串
};
//String 的析构函数
String:: ~String (void)
{
(1);
}
//String 的普通构造函数
String: :String(const char * str)
{
if (2)
{
m_data = new char[1];
*m_data = '\0';
}
else
{
int length = strlen(str);
m_data = new ehar[ length + 1 ];
strepy(m_data, str);
}
}
//拷贝的构造函数
String:: String(const String &other)
{ int length = strlen(other. m_data);
m_data = new char[ length + 1 ];
strepy(m_data, other, m_data); //赋值函数
String & String::operate = (eonst String &other) //
{
if (3)
return * this;
delete [] m_clara; //释放原有的内存资源
int length = strlen(other, m_data);
m_data = new chart length + 1 ];
(4);
return (5);
}
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!