Home Forums C Programming Use STL containers instead of C arrays

Viewing 0 reply threads
  • Author
    Posts
    • #1879
      will
      Participant

      When using C++, you should always strive to use STL containers like std::vector and std::list instead of ordinary C arrays.

      Consider this example:


      int* array = new array[size];
      doSomething(array);
      delete[] array;

      All is fine, until doSomething() is changed to throw an exception. If doSomething throws, we will have a memory leak.

      The correct way of doing this is:


      vector array(size);
      doSomething();

      If doSomething() throws an exception now, no memory will be leaked.

      This is just one of the reasons to use STL containers instead of C arrays. STL containers are much less error prone, more robust and easier to use.

Viewing 0 reply threads
  • The forum ‘C Programming’ is closed to new topics and replies.