FixedContainer.h


Dosyayı İndir
#ifndef FIXEDCONTAINER_H
#define FIXEDCONTAINER_H

#include <iostream>
#include <stdexcept>

using namespace std;

template <class T>
class FixedContainer : public BaseContainer<T>
{
public:
    FixedContainer(int length);
    virtual ~FixedContainer();
    int getSize() const;
	T getValue(const int index) const ;
    void setValue (const int index,T value);
    T operator [] (int index) const ;
    T &operator [] (int index) ;
private:
    int _length;
    T *_data;
};


template <class T>
FixedContainer<T>::FixedContainer(int length)
    : _length(length)
{
    _data=new T[_length];
}
template <class T>
FixedContainer<T>::~FixedContainer()
{
     delete [] _data;
}
template <class T>
int FixedContainer<T>::getSize() const{
    return _length;
}

template <class T>
T FixedContainer<T>::getValue(const int index) const{
    if(index >=0 && index < getSize()){
        return _data[ index ];
    }else{
        throw invalid_argument("Dizi s�ras� s�n�rlar�n alt�nda!" );
    }
}
template <class T>
void FixedContainer<T>::setValue(const int index,T value){
    if(index >=0 && index < getSize()){
        _data[ index ]=value;
   }else{
        throw invalid_argument("Dizi s�ras� s�n�rlar�n alt�nda!" );
     }
}
template <class T>
T FixedContainer<T>::operator[](int index) const{
    return _data[index];
}
template <class T>
T &FixedContainer<T>::operator[](int index) {
    return _data[index];
}
#endif

				
Dosyayı İndir

Bu Sayfayı Paylaş:




Bu Sayfayı Paylaş:

İletişim Bilgileri

Takip Et

Her Hakkı Saklıdır. Bu sitede yayınlanan tüm bilgi ve fikirlerin kullanımından fibiler.com sorumlu değildir. Bu sitede üretilmiş , derlenmiş içerikleri, fibiler.com'u kaynak göstermek koşuluyla kendi sitenizde kullanılabilirsiniz. Ancak telif hakkı olan içeriklerin hakları sahiplerine aittir