mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-06-27 14:15:30 -06:00
Developing C++11 features
git-svn-id: svn://ultimatepp.org/upp/trunk@8866 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
238cd57518
commit
6e4e6e9f93
2 changed files with 14 additions and 0 deletions
|
|
@ -131,6 +131,7 @@ public:
|
|||
|
||||
#ifdef CPP_11
|
||||
void Insert(int i, std::initializer_list<T> init);
|
||||
Vector(std::initializer_list<T> init) { vector = NULL; items = alloc = 0; Insert(0, init); }
|
||||
#endif
|
||||
|
||||
// Deep copy
|
||||
|
|
@ -269,6 +270,9 @@ public:
|
|||
// Deep copy
|
||||
Array(const Array& v, int) { __DeepCopy(v); }
|
||||
|
||||
void Insert(int i, std::initializer_list<T> init);
|
||||
Array(std::initializer_list<T> init) { Insert(0, init); }
|
||||
|
||||
class Iterator;
|
||||
|
||||
class ConstIterator {
|
||||
|
|
|
|||
|
|
@ -530,6 +530,16 @@ void Array<T>::Insert(int i, const Array& x, int offset, int count) {
|
|||
vector[q + i] = DeepCopyNew(x[q + offset]);
|
||||
}
|
||||
|
||||
#ifdef CPP_11
|
||||
template <class T>
|
||||
void Array<T>::Insert(int i, std::initializer_list<T> init)
|
||||
{
|
||||
vector.InsertN(i, init.size());
|
||||
for(auto q : init)
|
||||
vector[i++] = DeepCopyNew(q);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef UPP
|
||||
template <class T>
|
||||
void Array<T>::Xmlize(XmlIO& xio, const char *itemtag)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue