- ������ 많��� ���는 vector, string��� �������� ��� 모���������. ���1��� �����부���는 모르는 내���(��������� ������..)��� ��� 많������ ������ ������ 뛰������.
1. Item13. Prefer vector and string to dynamically allocated arrays. ¶
1.1. new/delete �������� 문������ ¶
- new ���������면 delete ��������� ������는 번��������.
- delete [] ��� delete 를 ��� ������ ���. ���못 ���면 무��� ������ 벌��������� 모��.
- ���번 delete��� 메모리를 ��� delete���면 "���못�� ������... " ��� ���러��� �������� 모��.
1.2. vector/string ��� ���면 ������ ������ ¶
- ��������� ��������� 메모리 ���리 ������.(���)
- ��������� ��������� ����������.(������ ���)
- 배������ ������������ ���는 ��������� ������������.
- char*��� �����������.
1.3. �������� ������볼���들 ¶
- reference count���는 ��� ���는데.. 뭐���는 ������.. ������ 변��� ���는������?--a AfterCheck
- 멀��� �������� ������������는 ���른 ����������� ��������������� 복���������므�� ��������� �����������는데.. ������ ������������ ������������..--;
2. Item14. Use reserve to avoid unnecessary reallocations. ¶
2.1. vector/string��� 메모리��� ������������ 더 ������는 ������ ¶
- �������� 메모리를 ������������.(������������� ���배 ���������.)
- ���본 ��������������� ���들��� ���롭��� ��������� 메모리�� ���������.
- ���본 ������������������ ����� ������들��� ������������.
- ���본 ��������������� 메모리를 ������������.
2.2. ������릴��� ���는 ������������ ��������� ������ 메�����들 ¶
- size() - ������ ��������������� 들��� ���는 ��������� ���.(���대량 ������)
- capacity() - ������ ����������� ���는 메모리��� ���대 ������������ ���는 ������ ���
- resize(n) - n��� ��������� ������ 메모리 ���������
- n��� ������ size()보��� ������면 - ��������부��� size() - n 만��� ���������.
- n��� ������ size()보��� ���면 - ��������부��� n - size() 만������ 빈 ��������� ������������.
- n��� ������ capacity()보��� ���면 - 메모리 ���������������.
- reserve() - ��� ��������������� capacity를 ������ n��� ����� ������.
- vector������ 만��� ������ capacity보��� n��� ������면? - ���������.
- string������는 ? ����������� 모른���.(--;)
2.3. ������를 ������������ ������면 reserve 메�����를 ������������. ¶
- reserve를 ���������면 ���������, ��복���, ���������, ������ 등등��� ��������� ��������� ��������� ������.
- reserve�� ������ ������ ������ 놓��� �������� trim() ���������. 빈������ �����������.
3. Item15. Be aware of variations in string implementations. ¶
4. Item16. Know how to pass vector and string data to legacy APIS ¶
5. Item17. Use 'the swap trick' to trim excess capacity. ¶
6. Item18. Avoid using vector<bool>. ¶