📄 classassignmentoprimp.cpp
字号:
#include <iostream>
#include <cassert>
#include "classAssignmentOverload.h"
using namespace std;
void cAssignmentOprOverload::print() const
{
if(length == 0)
cout<<"List is empty"<<endl;
else
{
for(int i = 0; i < length; i++)
cout<<list[i]<<" ";
cout<<endl;
}
}
void cAssignmentOprOverload::insertEnd(int item)
{
if(length == maxSize)
cout<<"List is full"<<endl;
else
list[length++] = item;
}
void cAssignmentOprOverload::destroyList()
{
delete [] list;
list = NULL;
length = 0;
maxSize = 0;
}
cAssignmentOprOverload::cAssignmentOprOverload(int size)
{
length = 0;
if(size <= 0)
maxSize = 10;
else
maxSize = size;
list = new int[maxSize];
assert(list != NULL);
}
const cAssignmentOprOverload& cAssignmentOprOverload::operator=
(const cAssignmentOprOverload& otherList)
{
if(this != &otherList) //avoid self-assignment; Line 1
{
if(list != NULL) //Line 2
destroyList(); //Line 3
maxSize = otherList.maxSize; //Line 4
length = otherList.length; //Line 5
if(maxSize != 0) //Line 6
{
list = new int[maxSize]; //Line 7
assert(list != NULL); //Line 8
for(int i = 0; i < length; i++) //Line 9
list[i] = otherList.list[i]; //Line 10
}
else //Line 11
list = NULL; //Line 12
}
return *this; //Line 13
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -