// MyIntArray.h: interface for the CMyIntArray class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MYINTARRAY_H__A2E05BF3_F96E_4F0E_B5FF_2FA68E632167__INCLUDED_)
#define AFX_MYINTARRAY_H__A2E05BF3_F96E_4F0E_B5FF_2FA68E632167__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <afxtempl.h>

typedef CArray <int, int> CIntArray;

#ifdef  BUILD_UTILITYDLL
#define     UTILITYDLL  __declspec(dllexport)
#else
#define     UTILITYDLL  __declspec(dllimport)
#endif

class UTILITYDLL CMyIntArray : public CIntArray
{
public:
//  default constructor
    CMyIntArray();

//  copy constructor for CMyIntArray data type
    CMyIntArray(const CMyIntArray &rhs);

//  copy constructor for CIntArray data type
    CMyIntArray(const CIntArray &rhs);

//  copy constructor for integer data type
    CMyIntArray(const int &rhs);

//  default destructor
    virtual ~CMyIntArray();

//  overload = operator from CIntArray to CMyIntArray data type
    CIntArray& operator=(const CIntArray &rhs);

//  overload = operator from CMyIntArray to CMyIntArray data type
    CMyIntArray& operator=(const CMyIntArray &rhs);

//  overload = operator from integer to CMyIntArray data type
    CMyIntArray& operator=(const int &rhs);
};

#endif // !defined(AFX_MYINTARRAY_H__A2E05BF3_F96E_4F0E_B5FF_2FA68E632167__INCLUDED_)
