diff --git a/GeoLib/Triangle.cpp b/GeoLib/Triangle.cpp
index f29e4568a54396db9a73fa4771439ae9ad32af8e..b257021ab6aa659da959d145a356adc7b016dc15 100644
--- a/GeoLib/Triangle.cpp
+++ b/GeoLib/Triangle.cpp
@@ -23,12 +23,9 @@ namespace GeoLib {
 
 Triangle::Triangle (std::vector<Point *> const &pnt_vec,
     std::size_t pnt_a, std::size_t pnt_b, std::size_t pnt_c) :
-    _pnts(pnt_vec), _initialized (true)
+    _pnts(pnt_vec), _pnt_ids( {{pnt_a, pnt_b, pnt_c}} )
 {
     assert(!_pnts.empty());
-    _pnt_ids[0] = pnt_a;
-    _pnt_ids[1] = pnt_b;
-    _pnt_ids[2] = pnt_c;
 }
 
 void Triangle::setTriangle (std::size_t pnt_a, std::size_t pnt_b, std::size_t pnt_c)
diff --git a/GeoLib/Triangle.h b/GeoLib/Triangle.h
index b137ad69059faf8be8b21d3223335cf28c0e794f..50c1a22d9ac13f0f5bc7e63b2f1ad82aaff1c93a 100644
--- a/GeoLib/Triangle.h
+++ b/GeoLib/Triangle.h
@@ -78,7 +78,7 @@ protected:
     /** a vector of pointers to points */
     const std::vector<Point*> &_pnts;
     /** position of pointers to the geometric points */
-    std::size_t _pnt_ids[3];
+    std::array<std::size_t, 3> _pnt_ids;
 };
 
 void getPlaneCoefficients(Triangle const& tri, double c[3]);