티스토리 뷰

#include<iostream>
#include<assert.h>

template<typename T, unsigned int T_SIZE>
class MyArray
{
	private:
	// int m_length;
	T *m_data; // T m_data[T_SIZE]
	
	public:
	
	MyArray()
	{
		m_data = new T [T_SIZE];
	}
	
	~MyArray()
	{
		delete[] m_data;
	}
	
	// void reset()
	// {
	// 	delete[] m_data;
	// 	m_data = nullptr;
	// 	m_length = 0;
	// }
	
	T & operator [](int index)
	{
		assert(index >= 0 && index < T_SIZE);
		return m_data[index];
	}
	
	int getLength()
	{
		return T_SIZE;
	}
	
	void print()
	{
		for(int i = 0; i < T_SIZE; i++)
			std::cout << m_data[i] << " ";
	}
};



int main()
{
	// std::vector<dobule> my_array; my_array.resize(100);
	MyArray<double, 100> my_array; // std::array<double, 100>
	
	for(int i = 0; i < my_array.getLength(); ++i)
		my_array[i] = i + 0.5;
	
	my_array.print();
}

 

int main()
{
	// std::vector<dobule> my_array; my_array.resize(100);
	MyArray<double, 100> my_array; // std::array<double, 100>
	
	for(int i = 0; i < my_array.getLength(); ++i)
		my_array[i] = i + 0.5;
	
	my_array.print();
}

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함