[C++] const auto &

μ€κ°œΒ·2025λ…„ 7μ›” 25일
0

const auto &

#include <string>
#include <iostream>
#include <map>

int main() {
    map<string, int> fruitMap = {{"apple", 1}, {"banana", 2}, {"cherry", 3}};

    for (const auto& pair : fruitMap) {
        cout << pair.first << "=" << pair.second << " ";
    }

    return 0;
}

πŸ’‘ const auto&와 const auto 차이

  • const auto&
    : 레퍼런슀 λ³€μˆ˜λ‘œμ„œ map의 각 μš”μ†Œλ₯Ό 직접 μ°Έμ‘°ν•˜κΈ° λ•Œλ¬Έμ— 좔가적인 λ©”λͺ¨λ¦¬λ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€.
  • const auto
    : map의 각 μš”μ†Œλ₯Ό λ³΅μ‚¬ν•΄μ„œ λ§€ λ°˜λ³΅λ§ˆλ‹€ μƒˆλ‘œμš΄ 객체가 μƒμ„±λœλ‹€.
  • 즉 const auto&λ₯Ό μ‚¬μš©ν•˜λŠ” 것이 μ„±λŠ₯이 더 μ’‹λ‹€.
  • μ»¨ν…Œμ΄λ„ˆλ₯Ό λ°˜λ³΅λ¬Έμ—μ„œ μ‚¬μš©ν•˜κ±°λ‚˜ ν•¨μˆ˜μ˜ 인수둜 λ„˜κΈΈ λ•ŒλŠ” 항상 λ³΅μ‚¬ν•˜λŠ” λΉ„μš©μ„ κ³ λ €ν•΄μ•Ό ν•œλ‹€.

0개의 λŒ“κΈ€