Compare commits
5 Commits
c49545d3ff
...
main
Author | SHA1 | Date | |
---|---|---|---|
5dfbb423d3 | |||
65428a0883 | |||
4e239c6091 | |||
e5bcc44b2e | |||
cc70b96d30 |
@ -1,7 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
void swap(T a, T b)
|
void swap(T& a, T& b)
|
||||||
{
|
{
|
||||||
T tmp = a;
|
T tmp = a;
|
||||||
a = b;
|
a = b;
|
||||||
@ -9,13 +9,13 @@ void swap(T a, T b)
|
|||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
T min(T a, T b)
|
T min(const T& a, const T& b)
|
||||||
{
|
{
|
||||||
return a > b ? b : a;
|
return a > b ? b : a;
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
T max(T a, T b)
|
T max(const T& a, const T& b)
|
||||||
{
|
{
|
||||||
return a > b ? a : b;
|
return a > b ? a : b;
|
||||||
}
|
}
|
||||||
|
@ -24,7 +24,7 @@ class Array
|
|||||||
|
|
||||||
Array(const Array& src)
|
Array(const Array& src)
|
||||||
{
|
{
|
||||||
new T[0];
|
this->_arr = NULL;
|
||||||
*this = src;
|
*this = src;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -39,9 +39,10 @@ class Array
|
|||||||
return *this;
|
return *this;
|
||||||
delete[] this->_arr;
|
delete[] this->_arr;
|
||||||
this->_size = src._size;
|
this->_size = src._size;
|
||||||
new T[src._size];
|
this->_arr = new T[src._size];
|
||||||
for (size_t i = 0; i < src._size; i++)
|
for (size_t i = 0; i < src._size; i++)
|
||||||
this->_arr[i] = src._arr[i];
|
this->_arr[i] = src._arr[i];
|
||||||
|
return *this;
|
||||||
};
|
};
|
||||||
|
|
||||||
T& operator[](unsigned int index) const
|
T& operator[](unsigned int index) const
|
||||||
|
@ -24,14 +24,39 @@ int main()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
std::cout << "Fill and get";
|
std::cout << "Fill and get" << std::endl;
|
||||||
{
|
{
|
||||||
unsigned int size = 10;
|
unsigned int size = 10;
|
||||||
Array<int> t(size);
|
Array<int> t(size);
|
||||||
for (unsigned int i = 0; i != size; i++)
|
for (unsigned int i = 0; i != size; i++)
|
||||||
t[i] = i;
|
t[i] = i;
|
||||||
for (unsigned int i = 0; i != size; i++)
|
for (unsigned int i = 0; i != size; i++)
|
||||||
std::cout << i << std::endl;
|
std::cout << t[i] << std::endl;
|
||||||
|
}
|
||||||
|
std::cout << std::endl;
|
||||||
|
|
||||||
|
std::cout << "Copy and get" << std::endl;
|
||||||
|
{
|
||||||
|
unsigned int size = 10;
|
||||||
|
Array<int> t(size);
|
||||||
|
for (unsigned int i = 0; i != size; i++)
|
||||||
|
t[i] = i;
|
||||||
|
Array<int> b(t);
|
||||||
|
for (unsigned int i = 0; i != size; i++)
|
||||||
|
std::cout << b[i] << std::endl;
|
||||||
|
}
|
||||||
|
std::cout << std::endl;
|
||||||
|
|
||||||
|
std::cout << "operator = and get" << std::endl;
|
||||||
|
{
|
||||||
|
unsigned int size = 10;
|
||||||
|
Array<int> t(size);
|
||||||
|
for (unsigned int i = 0; i != size; i++)
|
||||||
|
t[i] = i;
|
||||||
|
Array<int> b;
|
||||||
|
b = t;
|
||||||
|
for (unsigned int i = 0; i != size; i++)
|
||||||
|
std::cout << b[i] << std::endl;
|
||||||
}
|
}
|
||||||
std::cout << std::endl;
|
std::cout << std::endl;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user