Dynamic arrays and pointers are an important and fundamental part of C++, particularly for people starting off. In fact they are vitally important.
Later on in your studies you will learn about vectors and other ‘containers’ which take a lot of the hard work out of using basic arrays but it is a major mistake not to go through the basics and leap to mysterious conclusions.
Don’t be put off by self-appointed ‘experts’ who probably aren’t more than a couple of lectures ahead of you.
In any case dynamic arrays for quick/simple applications are all that’s needed.
Dynamic arrays and pointers are an important and fundamental part of C++, particularly for people starting off.
To teach C++ as "C with bits on top" is considered the wrong approach by the experienced C++ community, for good reasons. The evidence shows that teaching people to think and write in C first, rather than in C++, is damaging.
Kate Gregory's talks are great, I love what she says about variable names. Too often do I see "thing1" and "thing2" acting in mysterious ways, when better names would have made the relationship much clearer (/slightly off topic).
Oh, so it's just like a normal array? And is there a way to add a third element?
if you use C's memory (malloc and free) instead of new and delete, there is a realloc. You can also make a new block of memory and copy the old one to it, release the old one... its not efficient to do this too much. Vectors do this for you, and they over-allocate when they grow to reduce the # of times this happens.
Generally you will use the STL or third party trusted tools like boost unless doing very low level coding (eg, writing the stl for a compiler) or embedded work (may not support stl) or the like. Playing with pointers should be considered 'just to learn them better'.