Index: src/libchcore/TStringArray.h
===================================================================
diff -u -N -r633a533cb6e741d44fe28aa56339e1d2709b1b27 -re9926b6e83984d0f30bf2008b93874c7c483d95c
--- src/libchcore/TStringArray.h	(.../TStringArray.h)	(revision 633a533cb6e741d44fe28aa56339e1d2709b1b27)
+++ src/libchcore/TStringArray.h	(.../TStringArray.h)	(revision e9926b6e83984d0f30bf2008b93874c7c483d95c)
@@ -55,10 +55,38 @@
 	friend class TStringArray;
 };
 
+class LIBCHCORE_API TStringArrayConstIterator
+{
+protected:
+	TStringArrayConstIterator(std::vector<TString>::const_iterator iterArray);
+
+public:
+	TStringArrayConstIterator();
+	~TStringArrayConstIterator();
+
+	TStringArrayConstIterator operator++(int);
+	TStringArrayConstIterator& operator++();
+
+	bool operator==(const TStringArrayConstIterator& rSrc) const;
+	bool operator!=(const TStringArrayConstIterator& rSrc) const;
+
+	const TString& operator*();
+	const TString& operator*() const;
+
+private:
+#pragma warning(push)
+#pragma warning(disable: 4251)
+	std::vector<TString>::const_iterator m_iterArray;
+#pragma warning(pop)
+
+	friend class TStringArray;
+};
+
 class LIBCHCORE_API TStringArray
 {
 public:
 	typedef TStringArrayIterator iterator;
+	typedef TStringArrayConstIterator const_iterator;
 
 public:
 	TStringArray();
@@ -75,6 +103,8 @@
 
 	TStringArrayIterator Begin();
 	TStringArrayIterator End();
+	TStringArrayConstIterator Begin() const;
+	TStringArrayConstIterator End() const;
 
 private:
 #pragma warning(push)