[말랑 퀴즈] 26/03/29 문제

게시:     수정

카테고리:

태그:

제 말랑말랑 퀴즈 생성기는 이곳에서 확인하실 수 있습니다.

말랑말랑 퀴즈 📝

날짜: 2026-03-29 문제 수: 5문제


Q1. 🟡 보통

빈칸을 채우시오.

C++ 클래스 생성자 본문 안에서 멤버 변수에 값을 대입하는 방식은, 사용자 정의 타입 멤버의 경우 ①___ 가 먼저 호출된 뒤 ②___ 가 호출되는 비효율이 있다. 이를 해결하기 위해 ③___ 를 사용하면, ④___ 를 한 번만 호출하여 더 효율적으로 초기화할 수 있다.

출처: game_dev/cpp/chapter1/2025-04-21-cpp_1_4.md

📝 내 답: ① 생성자 ② 복사 대입 생성자 ③ 초기화 리스트 ④ 복사 대입 생성자


Q2. 🟡 보통

C++에서 private 상속객체 합성(public 상속 + 멤버 변수) 중, private 상속을 반드시 사용해야 하는 경우를 고르시오.

  • A. “is-implemented-in-terms-of” 관계를 표현해야 하는 대부분의 경우
  • B. 기본 클래스의 protected 멤버에 접근하거나, 가상 함수를 재정의해야 할 때
  • C. 컴파일 의존성을 최소화하고 싶을 때
  • D. 파생 클래스에서 기본 클래스의 가상 함수를 재정의하지 못하도록 막고 싶을 때

출처: game_dev/cpp/chapter6/2025-10-26-cpp_6_39.md

📝 내 선택: D. 상속 받은 함수는 사용할 수 있지만, 재정의는 하지 못하는 것으로 알고 있다.

해답지 본 이후 쓴 글: 잘못 기억하고 있었음


Q3. 🟢 쉬움

다음 명제가 참(O)인지 거짓(X)인지 판단하라.

프라우드넷의 m_autoConnectionRecovery = true 설정을 사용하면, 와이파이가 끊겼다가 복구될 때 오프라인 동안 수신하지 못한 메시지는 영구 손실되어 다시 받을 수 없다.

출처: server/game_server/6/2026-02-23-game_server_6_5.md

📝 내 답: X


Q4. 🟢 쉬움

빈칸을 채우시오.

아래 코드에서 a = b = c; 와 같은 연쇄 대입이 가능하려면, 대입 연산자와 복합 대입 연산자 모두 어떤 값을 반환해야 하는가?

class Widget {
public:
    Widget& operator=(const Widget& rhs) {
        // ...
        return ___; // ①
    }
    Widget& operator+=(const Widget& rhs) {
        // ...
        return ___; // ②
    }
    Widget& operator=(int rhs) {
        // ...
        return ___; // ③
    }
};

출처: game_dev/cpp/chapter2/2025-05-30-cpp_2_10.md

📝 내 답: *this


Q5. 🔴 어려움

매치메이킹을 여러 로비 서버로 분산할 때, 로비 서버 간 데이터 불일치(스테일 데이터) 문제가 발생할 수 있다.

다음 상황에서 이 문제가 어떻게 발생하는지 설명하고, 해결 방법을 2가지 서술하시오.

상황:

  • 클라이언트 1은 로비 서버 1에 매칭 대기 중
  • 클라이언트 2~10은 로비 서버 2에 매칭 대기 중
  • 클라이언트 1이 매칭 취소를 요청하여 로비 서버 1은 이를 인지했으나, 해당 정보가 로비 서버 2에 아직 동기화되지 않은 상태

출처: server/game_server/9/2026-03-27-game_server_10_3.md

📝 내 풀이:

  1. 진행중인 매칭을 취소하고, 복구하도록 한다.
  2. 두 로비 서버가 공유하는 메모리를 따로 두고, 이를 접근하게 한다.

해답지 본 이후 쓴 글: 깜빡하고 어떻게 문제가 발생하는지 쓰지 않았다.


✅ 결과

1 2 3 4 5
🔺

MallangQuiz 카테고리 내 다른 글 보러가기

댓글남기기