inflearn logo
강의

Course

Instructor

Hong Jung-mo's C++ Programming: Learning by Doing

함수 호출 로그에 대해 질문 있습니다.

Resolved

340

yoonjuhen1328

15 asked

1

지금 전문가를 위한 C++ (개정판 3판)으로 공부하고 있습니다.

이 부분에서 오류가 발생해서 구글 검색을 해봤는데도 해결을 하지 못했습니다.

이 예제를 실행시키려면 어떠한 문법을 써야 하나요?

c++

Answer 2

2

honglab

수박님의 답변이 정확합니다. 책의 문구를 보시면 "자동으로" 정의된다라고 적혀 있습니다. 바꿔말하면 이미 나도 모르는 사이에 더블언더스코어func더블언더스코어 라는 이름의 변수가 정의가 되어 있기 때문에 같은 이름의 변수를 새로 만들 수가 없습니다. 아마 에러 메시지도 그렇게 나왔을 겁니다.

  • 강의와 직접적으로 연관되지 않은 질문은 디스코드로 오세요.

https://discord.gg/E64DNJaaQz

 

0

yoonjuhen1328

감사합니다.

2

Soobak

안녕하세요, 답변 도우미 Soobak 입니다.

 

__func__ 라는 사전 정의 식별자는 C++11 표준 이후부터 지원되는 기능입니다.

따라서, 첫 번째로 컴파일러의 버전을 확인해보시길 바랍니다.

 

두 번째로, 질문자님께서 예제의 어떠한 부분부터 실행에 문제를 겪으셨는지 제가 알 수 없어서 도움을 드리는 데에 한계가 있네요. 🥲

 

해당 내용을 활용한 간단한 예시 코드를 첨부드리오니, 확인해보시고 추가적인 궁금증이 있으시다면 편하게 댓글을 남겨주시면 감사하겠습니다.

 

예시코드
: addNumbers() 함수를 실행할 시, 함수의 이름을 출력하여, 로그(Log)를 남기도록 합니다.

#include <iostream>

int addNumbers(int number1, int number2)
{
    std::cout << "Entering function " << __func__ << std::endl; 
    return number1 + number2;
}

int main() {
    int sum = addNumbers(5, 3);
    std::cout << "Sum: " << sum << std::endl;
    return 0;
}

실행결과

image

1

yoonjuhen1328

감사합니다.

image이 부분 때문에 에러가 나서 실행이 안됩니다.

0

Soobak

안녕하세요, 답변 도우미 Soobak 입니다.

 

제가, 해당 책의 작성자 분에 대한 의견을 알 수는 없지만,
개인 적인 의견으로, 해당 부분은 실행을 위한 코드가 아니라, __func__ 사전정의 식별자의 설명을 위한 교육적 목적의 코드로 생각됩니다.


첨부해주신 사진의 맨 아래의 예시 코드와 제 답변에서 첨부드린 예시 코드를 참고해보시면 좋을 것 같습니다.

교재 있나요?

1

131

2

11:11 부근에 Something::temp와 Something::getValue의 앞에 &를 붙이는 이유가 뭔가요? (함수 이름은 포인터(주소)가 아닌가요?)

1

87

3

using namespace std; 선언 후에 std::를 하는 이유가 궁금합니다

1

99

2

cstr직접구현

0

115

3

BubbleSort

1

76

2

숙제 마지막 부분

1

78

2

강의와 똑같이 진행했는데 링킹 에러가 발생합니다.

1

92

2

수업할때 레퍼런스로 사용하는 도서는 어떤 도서인가요??

1

159

2

공변반환형 관련 문의 드립니다.

1

89

2

170강 유니크 포인터에대해 질문있습니다

1

79

1

섹션 5 퀴즈의 답이 이상합니다

1

83

2

이중포인터와 배열이 이해가 안됩니다.

1

152

2

5분 17~5분 34초 객체 잘림 질문

1

76

1

Resource.h 코드 알려주세요

1

70

1

char name[] 배열의 길이와 관련해 일부 궁금점이 생겨서 질문합니다

1

93

2

화면좌측 숫자 보이기

1

114

1

화면 좌측 숫자 보이기

0

65

1

처음 c++ 수강하려는데요. 비주얼스튜디오 2022 다운로드해서 설치하면 되는건가요??

1

136

3

46강 string 버퍼 질문입니다

1

80

2

프로그래머스 수열과 구간 쿼리 2 문제 질문입니다.

1

123

2

[] 범위 검사시 assert 사용 관련 질문

1

87

2

Lecture 클래스 멤버변수 명명 관련

0

89

2

프로그래머스의 대소문자 바꿔서 출력하기 문제를 푸는데요

0

73

1

noexcept과 throw()

1

81

2