Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ASW(Application SpaceWarp)
- Private Bytes
- VR
- ColorGradingLutPass
- 메모리 누수
- URP
- AppSW
- URP로 변경
- 개인 바이트
- Cell Look
- Cartoon Rendering
- Virtual Byte
- C언어
- 3d
- Rim Light
- 게임 수학
- working set
- 가상 바이트
- Windows Build
- Cell Shader
- OculusMotionVectorPass
- 벡터
- 프로그래밍 기초
- Specular
- 작업 집합
- Three(Two) Tone Shading
- Toon Shader
Archives
- Today
- Total
WinCNT
범위 기반 for문 본문
범위 기반 for문
범위 기반 for문은 일반적인 for문 보다 생산성을 높일 수 있는 문법이다
다음과 같은 일반적인 for문이 있다고 하자
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
// 일반 for문
for (size_t i = 0; i < 10; i++)
{
cout << arr[i] << endl;
}
위의 코드를 범위 기반 for문을 사용하면 다음과 같이 바꿀 수 있다
// 범위 기반 for문
for (int elem : arr)
{
cout << elem << endl;
}
// auto를 이용한 범위 기반 for문
for (auto elem : arr)
{
cout << elem << endl;
}
// arr을 복사하지 않고 접근만 하는 for문
for (const auto& elem : arr)
{
cout << elem << endl;
}
포인터와 범위 기반 for문
포인터의 경우 범위를 알 수 없으므로 범위 기반 for문을 사용할 수 없다
// 배열의 크기를 알 수 없으므로 동적 배열(포인터)에 사용 불가
//int* buff = new int[10];
//for (auto x : buff) x = 0;
동적 기반 배열에 범위 기반 for문을 사용하고 싶을 경우는 vector를 쓰자
vector<int> buff(10);
for (auto x : buff) x = 0;
SSS
'게임 프로그래밍(학습 내용 정리) > Modern C++' 카테고리의 다른 글
배열 포인트와 _countof(혹은 ARRAYSIZE) (0) | 2022.06.14 |
---|---|
스마트 포인터 - unique_ptr (0) | 2022.04.21 |
스마트 포인터 (0) | 2022.04.14 |
decltype과 Value Category(lvalue, rvalue, xvalue) (0) | 2022.03.24 |
Modern C++ - Auto (0) | 2022.03.24 |