求C++编程,会的进,急急急!!!

来源:百度知道 编辑:UC知道 时间:2024/06/16 12:33:24
选一题编出来就行了,谢谢了,急用!!!
要求综合运用《C++面向对象程序设计》知识来实现此题目。具体如下:
1。建立一个字符串类,数据成员有char*str(存放字符串),int size(字符串长度)
设计三个构造函数:无参数,带参数和拷贝构造函数。
插入(追加)一个字符串。、
取子字符串,从某个位置取N个字符。
运算符重载:“+”字符串连接:“—”字符串比较。
并设计主函数测试字符串类!
2。建立一个学生类,数据成员有学号,姓名及五门课成绩
设计两个构造函数:无参数,带参数构造函数。
完成学生成绩的输入输出。
完成学生成绩排序,平均成绩排序。
并设计主函数,创建对象数组有五个学生,测试以上学生类。

各位老大们选一个做出来就行,就要交了,谢谢了!急急急!!!

#include <cstdlib>
#include <cstring>
class string
{
char* str;
int size;
public:
string();
string(const char*);
string(const string&);
~string();
void insert(const string&,int);
string substr(int pos,int n);
string operator+(const string&)const;
bool operator==(const string&)const;
};
string::string()
{
str=(char*)malloc(1);
*str='\0';
size=0;
}
string::string(const char* str)
{
this->str=(char*)malloc(strlen(str)+1);
memcpy(this->str,str,strlen(str)+1);
size=strlen(str);
}
string::string(const string& str)
{
this->str=(char*)malloc(str.size+1);
memcpy(this->str,str.str,str.size+1);
size=str.size;
}
string::~string()
{
free(str);
}
void string