Kuest AI

무엇이든 무료로 공부하세요

무료로 시작하기

AI로 C++를 10x 더 빠르게 배우세요

포인터, 참조, 메모리를 다이어그램으로 쉽게 설명해 드려요. 코드나 컴파일러 오류를 붙여 넣으면 Kuest가 무엇이 잘못됐는지 함께 찾아봐요.

817,000+명의 학생이 이미 Kuest로 공부하고 있어요

주제
10
유형
컴파일형, 정적 타입 언어
일반적인 수준
대학 CS1, CS2 및 자료 구조
진출 분야
시스템, 게임 개발, 임베디드

Kuest의 가르치는 방식 보기

답을 알려주기 전에 질문하므로, 스스로 생각하고 더 오래 기억하게 돼요.

나: void addOne(int x) { x = x + 1; } n = 5일 때 addOne(n)을 호출했는데도 n이 여전히 5예요. 왜 그런가요?
Kuest: addOne(n)을 호출하면 함수는 n 자체를 받나요, 아니면 다른 것을 받나요?
나: n을 받는다고 생각했는데, 복사본을 받는 걸까요?
Kuest: 맞아요. int x는 복사본이에요. 그렇다면 x = x + 1는 어떤 변수를 바꾸나요?
나: 복사본 x만 바꾸고, 함수가 끝나면 사라져요. n은 전혀 바뀌지 않아요.
Kuest: 정확해요. 함수가 n을 바꾸게 하려면 매개변수를 어떻게 조금 바꾸면 될까요?
나: 참조로 만들면 돼요: void addOne(int& x). 그러면 x는 n의 다른 이름이므로 n은 6이 돼요.

매개변수는 기본적으로 복사본이에요. 함수가 호출한 쪽의 변수를 바꿔야 한다면 &를 추가해 참조로 전달하세요.

Kuest와 함께 집중하는 학생들

명의 학생
817,000+
개국
100+
  • 화학 성적 C에서 A로

    “답을 베끼는 대신 정말 이해하기 시작했어요. 한 학기 만에 화학 성적이 C에서 A가 됐어요.”

    고등학교 3학년, 텍사스
  • 3시간 → 40분

    “노트가 몇 초 만에 퀴즈로 바뀌어요. 예전에는 밤새 걸리던 일이 이제는 드라마 한 편 보는 시간밖에 안 걸려요.”

    고등학교 2학년, 캘리포니아
  • 드디어 SAT 준비 완료

    “계획이 매일 무엇을 해야 하는지 정확히 알려줬어요. 처음으로 마음 편히 시험장에 들어갔어요.”

    고등학교 3학년, 뉴욕
  • 절대 단계를 건너뛰게 하지 않아요

    “처음엔 귀찮았지만 시험 날엔 정말 큰 도움이 됐어요. 이제는 이거 없이도 모든 문제를 풀 수 있어요.”

    오하이오주 9학년 학생
  • 과외 선생님보다 좋아요

    “자정에도 도와주고, 참을성 있고, 예전 과외 선생님 한 번 수업보다도 저렴해요.”

    플로리다주 대학 1학년생
  • 94일 연속 기록 중이에요

    “퀘스트는 10분이면 돼요. 버스에서 해요. 어쩌다 보니 이제는 제가 친구들에게 생물을 설명해 주고 있어요.”

    일리노이주 11학년 학생
  • 드디어 스페인어가 이해됐어요

    “튜터와 소리 내어 말하니 1년 수업을 듣는 것보다 발음이 더 빨리 좋아졌어요.”

    애리조나주 10학년 학생
  • 하룻밤 만에 부족한 부분을 찾았어요

    “갭 체크를 해 보니 몰 개념을 한 번도 제대로 이해하지 못했다는 걸 알았어요. 15분 만에 해결했죠.”

    조지아주 11학년 학생
  • 학부모입니다: 밤 9시 멘붕은 이제 끝

    “제가 미적분을 기억하는 척하지 않아도 아이가 제대로 도움을 받고, 매주 진도도 확인할 수 있어요.”

    워싱턴주 학부모

학습 방법

Kuest로 C++ 공부하는 방법

C++는 메모리를 그림으로 떠올릴 수 있으면 훨씬 쉬워져요. 각 변수가 어디에 있는지, 포인터가 무엇을 담는지, 객체가 언제 파괴되는지 이해해 보세요. 내용을 그려 보고, 컴파일러 오류는 첫 번째 오류부터 읽고, 큰 프로그램을 가끔 만드는 대신 작은 프로그램을 자주 연습하세요.

  1. 한 번에 기능 하나씩 배우기튜터 채팅

    다음 개념을 더하기 전에 참조, 벡터, 클래스에 관해 질문하고 Kuest의 확인 질문에 답해 보세요.

  2. 메모리 그리기학습 보드

    학습 보드에서 스택, 힙, 각 포인터가 가리키는 대상을 그림으로 확인하세요.

  3. 컴파일러 오류 해석하기사진 찍기

    코드와 컴파일러 출력을 붙여 넣거나 화면을 캡처하면 Kuest가 첫 번째 실제 오류를 찾도록 도와줘요.

  4. 출력 예측하기퀴즈

    포인터, 참조, 루프가 있는 코드 조각 퀴즈에 답해 보세요. 무엇이 출력되고, 무엇이 정의되지 않은 동작일까요?

  5. 규칙 기억하기플래시카드

    간격 반복 플래시카드로 전달 규칙, const, 자주 쓰는 표준 라이브러리 호출을 복습하세요.

  6. 취약한 부분 집중하기취약점 찾기

    포인터 연산이나 객체 수명처럼 계속 헷갈리는 부분을 Kuest가 찾아내면 그것만 집중 연습하세요.

배울 내용

주제를 탭해 지금 바로 배워 보세요.

  1. 01프로그램 구조와 컴파일main 작성, #include 사용, 컴파일과 링킹 이해하기
  2. 02자료형, 입력과 출력std::cin 및 std::cout와 함께 int, double, char, bool 사용하기
  3. 03제어 흐름if, switch, for, while 루프를 올바르게 작성하기
  4. 04함수와 매개변수값 전달, 참조 전달, const 참조 전달을 이해하고 각각 언제 사용할지 알기
  5. 05배열, 문자열, std::vector원시 배열 대신 std::vector와 std::string으로 여러 값을 저장하기
  6. 06포인터와 참조주소, *를 사용한 역참조, 포인터가 null일 수 있는 이유 설명하기
  7. 07메모리와 객체 수명스택과 힙, new와 delete, 스마트 포인터가 유용한 이유 설명하기
  8. 08클래스와 객체생성자, 소멸자, public 및 private 멤버가 있는 클래스 작성하기
  9. 09상속과 다형성virtual 함수를 오버라이드하고 기본 클래스 포인터를 안전하게 사용하기
  10. 10표준 라이브러리와 템플릿std::map, std::sort 같은 알고리즘, 간단한 함수 템플릿 사용하기

이렇게 물어보세요

질문을 탭하면 Kuest가 단계별로 가르쳐 드려요.

준비를 도와주는 시험

  • 프로그래밍 입문(CS1) 및 CS2 과목
  • 자료 구조 과목
  • 컴퓨터 과학 기말고사

Kuest 한 달 이용료는 개인 튜터 1시간 비용보다 저렴해요

똑같은 인내심으로, 언제든, 모든 과목을. 또는 무료 플랜을 계속 이용하세요.

개인 튜터

$40–801시간 기준

  • 며칠 전에 미리 예약
  • 세션당 한 과목
  • 1시간이 끝나면 종료

Kuest Plus

$10월간, 연간 결제

  • 이 사이트의 모든 과목과 시험
  • 필요한 만큼 언제든
  • 퀴즈, 플래시카드, 팟캐스트, 모의고사

궁금한 점, 답해 드려요

다음 학습 세션을 여기서 시작하세요

영구 무료 플랜. 카드 등록 불필요.

무료로 시작하기