STL을 사용하지 않는다면, C/C++언어, 자료구조를 공부하고 필요한 자료구조를 직접 만들어 사용해야 한다. 즉 불필요한 시간을 소비하고, 잘못 구현하여 버그를 만들 위험이 있고, 개인마다 구현 방법이 다르므로 사용이나 유지보수 측면에서 불편하다.
STL list를 사용하면 연결리스트를 만들어야 하는 시간을 절약할 수 있고, 이미 검증되어 있으므로 안전하고 표준 라이브러리이므로 사용 방법이 언제나 같아서 사용 및 유지보수가 좋아진다.
다만, list를 사용할때는 특성을 잘 파악하여 올바르게 사용해야 한다. 안그러면 성능의 하락 및 시스템 에러를 유발할 위험이 생긴다.
저장할 데이터 개수가 가변적이다.
배열은 데이터 개수를 설정하고, 만약 그 크기를 넘어가면 데이터가 넘쳐서 실행 도중 프로그램 오류가 발생하므로 코드를 수정 후 재컴파일 해야 한다. 그렇다고 '넉넉하게 잡아야지' 하고 큰 배열을 만들면 메모리 낭비가 발생한다. 그러나 list를 사용하면 저장 공간의 크기가 자동으로 변하므로 유연하게 사용할 수 있다.
중간에 데이터 삽입이나 삭제가 자주 일어난다.
MMORPG 게임에서 지도는 정말 크고 게임상에서 캐릭터의 행동에 대한 정보를 근처의 클라이언트에게만 통보하므로 지도를 작은 단위로(보통 사각형으로) 나눈 후 같은 단위에 포함 되어 있는 클라이언트와 그 단위 근처의 클라이언트에게만 통보한다. 지도를 작은 단위로 분할하여 해당 영역에 들어오는 유저는 저장하고 나가는 유저는 삭제해야 한다. 이와 같이 빈번하게 삽입, 삭제가 일어나는 곳에 list를 사용한다.
저장할 데이터 개수가 많으면서 검색을 자주 한다면 다른 컨테이너 라이브러리를 사용해야 한다.