diff --git a/GeoLib/Polyline.cpp b/GeoLib/Polyline.cpp
index 3522fa12dc814d2835fb6b7c8d12da5c8def0cb5..0c21c3cc374cf133d6899eadac6a0d4535281e04 100644
--- a/GeoLib/Polyline.cpp
+++ b/GeoLib/Polyline.cpp
@@ -524,12 +524,12 @@ LineSegment Polyline::SegmentIterator::operator*()
     return _polyline->getSegment(_segment_number);
 }
 
-bool Polyline::SegmentIterator::operator==(SegmentIterator const& other)
+bool Polyline::SegmentIterator::operator==(SegmentIterator const& other) const
 {
     return !(*this != other);
 }
 
-bool Polyline::SegmentIterator::operator!=(SegmentIterator const& other)
+bool Polyline::SegmentIterator::operator!=(SegmentIterator const& other) const
 {
     return other._segment_number != _segment_number ||
            other._polyline != _polyline;
diff --git a/GeoLib/Polyline.h b/GeoLib/Polyline.h
index f043f1f67ed4768208f1e18c6c223b439df46c9d..13dbd0e72ddf33b661a5b5add68bab87f6d64b22 100644
--- a/GeoLib/Polyline.h
+++ b/GeoLib/Polyline.h
@@ -72,9 +72,9 @@ public:
 
         LineSegment operator*();
 
-        bool operator==(SegmentIterator const& other);
+        bool operator==(SegmentIterator const& other) const;
 
-        bool operator!=(SegmentIterator const& other);
+        bool operator!=(SegmentIterator const& other) const;
 
         SegmentIterator& operator+=(std::vector<GeoLib::Point>::difference_type n);