Update operator[] logic of Matrix.

This commit is contained in:
kradchen
2023-05-16 11:36:24 +08:00
parent 846f59edb4
commit 047702ce19
2 changed files with 14 additions and 0 deletions

View File

@@ -171,6 +171,8 @@ namespace Aurora {
// sub
double& operator[](size_t index);
double operator[](size_t index) const;
/**

View File

@@ -531,6 +531,7 @@ TEST_F(Function1D_Test, nanAndFinite){
double* data = new double[9]{infinite,3,n,2,2,1,4,4,7};
auto matrix = Aurora::Matrix::fromRawData(data, 9,1,1);
auto r = Aurora::isnan(matrix);
EXPECT_DOUBLE_EQ(r.getData()[0],0);
EXPECT_DOUBLE_EQ(r.getData()[1],0);
@@ -543,4 +544,15 @@ TEST_F(Function1D_Test, nanAndFinite){
Aurora::nantoval(matrix,1);
EXPECT_DOUBLE_EQ(matrix.getData()[2],1);
double* data2 = new double[1]{n};
auto matrix2 = Aurora::Matrix::fromRawData(data, 1,1,1);
r = Aurora::isnan(matrix2);
EXPECT_DOUBLE_EQ(r.getData()[0],1);
r = Aurora::isfinite(matrix2);
EXPECT_DOUBLE_EQ(r.getData()[0],0);
Aurora::nantoval(matrix2,1);
EXPECT_DOUBLE_EQ(matrix.getData()[0],1);
}