다음 두 코드는 동일한 결과를 출력합니다. 두 번째 코드에서 사용된 문법의 이름은?
다음 두 코드는 동일한 결과를 출력합니다. 두 번째 코드에서 사용된 문법의 이름은?
// 코드 1
#include <iostream>
using namespace std;
int main() {
cout << "Hello World!";
return 0;
}
// 코드 2
#include <iostream>
int main() {
std::cout << "Hello World!";
return 0;
}
정답: B
⦁ 두 번째 코드에서
std::cout
에 사용된 ::
는 **스코프 해결 연산자(scope resolution operator)**입니다두 가지 방법의 비교:
방법 1:
using namespace std
사용⦁
using namespace std;
를 선언하면 std::
를 생략할 수 있습니다⦁ 코드가 간결해지지만 네임스페이스 충돌 가능성이 있습니다
방법 2:
std::
직접 사용⦁
using namespace std
없이 std::
를 매번 붙여서 사용⦁ 코드가 조금 길어지지만 더 명확하고 안전합니다
스코프 해결 연산자의 역할:
⦁
std::cout
는 "std 네임스페이스 안의 cout 객체"를 의미⦁ 어떤 네임스페이스의 요소인지 명확하게 지정
⦁ 같은 이름의 다른 객체와 구분하는 역할
⦁ 두 방법 모두 올바르며, 개발자의 선호에 따라 선택할 수 있습니다
💡 학습 팁
이 문제를 포함한 C++ 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.