오버플로우

C and C++

[C++][STL] vector for문 올바로 사용하기

대부분의 경우 vector를 for문에 사용할 때 iterator를 사용하거나 초기화식을 int를 사용한다. iterator로 사용할 경우 문제없지만 초기화식 타입에 int를 사용할 경우 오버플로우를 발생할 수 있다. 왜냐하면 vector의 size는 정확히 말하면 signed int가 아니라 unsigned int 타입이기 때문이다. 따라서 이러한 버그가 발생하면 찾기도 힘드니 정확한 방법으로 vector를 사용하도록 한다. 예제 1234567891011121314151617181920#include #include using namespace std; int main(void) { vector vt; vt.push_back(10); vt.push_back(10); vt.push_back(10); vt..

자유로운 범고래
'오버플로우' 태그의 글 목록