From 9b358c7bc02d36e9ac1d5c678e6b864df928931f Mon Sep 17 00:00:00 2001 From: barnestr Date: Mon, 21 Mar 2022 22:52:14 -0500 Subject: [PATCH] lab2 progress --- Lab1/lab1 | Bin 25112 -> 0 bytes Lab2/lab2 | Bin 18376 -> 19336 bytes Lab2/main.cpp | 56 ++++++++++++++++++++++++++++++++++++++++++++------ Lab2/row.cpp | 37 +++++++++++++++++++++------------ 4 files changed, 74 insertions(+), 19 deletions(-) delete mode 100755 Lab1/lab1 diff --git a/Lab1/lab1 b/Lab1/lab1 deleted file mode 100755 index 7ddd9e39552c2f22e765fc0a08c3ecd53ab80778..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25112 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 P-?UjtT;)=5q2hl5;r@BP literal 18376 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 diff --git a/Lab2/main.cpp b/Lab2/main.cpp index 97b83a9..31b21ef 100644 --- a/Lab2/main.cpp +++ b/Lab2/main.cpp @@ -14,16 +14,60 @@ using namespace std; int main() { + // Test Setup int length; - cout << "Enter desired length for row matrix:" << endl; + cout << "Enter the desired length for the matrix constructor test:" << endl; cin >> length; + + cout << "Test - Constructor / Access Operator" << endl; + // Test: Constructor Row row1(length); - for(int i = 0; i < length; i++){ - cout << "before seg fault" << endl; - // Will use access operator instead - //cout << row1.row_data[i] << " "; + + // Test: Access Operator (non const) + try{ + for(int i = 0; i < length; i++){ + cout << row1[i] << " "; + } + cout << endl; + cout << row1[1] << endl; + //row1[1] = 12.18; + cout << row1[1] << endl; + cout << row1[length+1] << endl; // Might change + }catch(out_of_range){ + cout << "Out of Range Exception Successfully Caught" << endl; + } + cout << "Test - Constructor/AccessOperator: PASS" << endl; + + cout << "Test - Copy Constructor/AccessOperator(const)" << endl; + // Test: Copy Constructor + const Row row1Copy(row1); + cout << "before seg"; + // Test: Access Operator (const) + try{ + for(int i = 0; i < length; i++){ + cout << row1Copy[i] << " "; + } + cout << row1Copy[1]; + cout << row1Copy[length+1]; // Might change + }catch(out_of_range){ + cout << "Out of Range Exception Successfully Caught" << endl; + } + cout << "Test - Copy Constructor / Access Operator (const): PASS" << endl; + + // Test: Assignment Operator + Row row2(length*2); + row2 = row1; + for(int i = 0; i < length*2; i++){ + cout << row2[i] << " "; } cout << endl; - + + // Test: Clear + row2.clear(); + for(int i = 0; i < length*2; i++){ + cout << row2[i] << " "; + } + cout << endl; + return 0; } diff --git a/Lab2/row.cpp b/Lab2/row.cpp index 972063b..f3c5fd2 100644 --- a/Lab2/row.cpp +++ b/Lab2/row.cpp @@ -4,29 +4,26 @@ using namespace std; // parameterized constructor Row::Row(unsigned int length){ - cout << "-Row Constructor-" << endl; // TODO: temp // Set matrix length private variable to passed in length this->length = length; // Create new array in heap for row_data this->row_data = new double[length]; // Clear all values in new array to 0 - for(int i = 0; i < length; i++) { - cout << "-Row Constructor-" << endl; // TODO: temp - this->row_data[i] = 0.0; - } + clear(); // finish } // copy constructor Row::Row(const Row& from){ - cout << "-Row Copy Constructor-" << endl; // TODO: temp // New row matrix gets length from previous matrix this->length = from.length; // Create new array in heap with new length this->row_data - new double[this->length]; // Copy all row_data values over to new array - for(int i = 0; i < this->length; i ++) { - this->row_data[i] = from.row_data[i]; + for(int i = 0; i < this->length; i++) { + cout << "before seg fault" << endl; + cout << this->row_data[i] << endl; + this->row_data[i] = from[i]; } // finish } @@ -38,7 +35,6 @@ Row::~Row(){ if(this->length > 0 ) { delete[] row_data; } - //finish } // access operator (const) @@ -59,12 +55,27 @@ double& Row::operator[](unsigned int column){ // assignment operator Row& Row::operator= (const Row& rhs){ - //finish - Row result(1); - return result; + if(&rhs != this){ + // Delete the current row matrix + if(length > 0){ + delete[] this->row_data; + } + // New row matrix gets length from previous matrix + this->length = rhs.length; + // Create new array in heap with new length + this->row_data - new double[this->length]; + // Copy all row_data values over to new array + for(int i = 0; i < this->length; i ++) { + this->row_data[i] = rhs.row_data[i]; + } + } + // Return address of the Row + return *this; } // clear row data void Row::clear(){ - //finish + for(int i = 0; i < length; i++) { + this->row_data[i] = 0; + } } \ No newline at end of file