묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
형 변환 생성자와 캐스팅
#include <iostream> using namespace std; class Knight { public: Knight() { cout << "[알림] 기본 생성자 호출" << endl; this->hp = 10; this->mp = 10; } Knight(int hp) { cout << "[알림] 타입 변환 생성자 호출" << endl; this->hp += hp; } ~Knight() { cout << "[알림] 소멸자 호출" << endl; } void print() { cout << "[정보] HP: " << this->hp << " MP: " << this->mp << endl; } public: int hp; int mp; }; int main() { // 1. 기본 자료형 형 변환 연산자 사용 // a의 값에 대해 형 변환 '연산자'를 사용하여 형 변환된 결과를 반환 후 b에 할당 int a = 3; double b = (double)a; // 2. 객체형에 대한 형 변환 생성자 사용 // (1) 기본적인 타입 변환 연산자 호출 순서 : 타입->소멸 Knight k1(5); k1.print(); // (2) 묵시적 타입 변환 연산자 호출 순서 : 타입->소멸 Knight k2 = 10; k2.print(); // (3) 기본 생성자로 생성 후 묵시적 타입 변환 연산자 호출하여 재할당 순서 : 기본->타입->소멸->소멸 Knight k3; k3 = 10; k3.print(); return 0; }[1]의 상황 - 이해하였습니다.해당하는 기본 자료형의 경우 단항 연산자인 "형 변환 연산자"에 의해 연산된 결과가 반환되어 double형 변수 b에 정상 할당되었습니다.[2-1]의 상황 - 이해하였습니다.오버로딩된 기본 연산자 중 인수가 하나인 타입 변환 생성자가 자동으로 호출되어 객체가 생성되었습니다.[질문 항목]Q1.[2-2] [2-3]의 상황 - 헷갈립니다.묵시적으로 형 변환 타입 생성자가 호출되어 우항의 Knight(10)이 우선 동작하고 그 결과가 반환되어 k2에 할당되었다라고 생각하였는데 실제 어셈블리로 동작을 확인하니 예상했던 순서로 동작하지 않고 바로 타입 변환 연산자가 호출되어 [2-1]과 [2-2]는 완전히 같았습니다. 기본 자료형에 대한 casting 처럼 캐스팅이 먼저 동작되고 그 결과가 반환되어 좌항에 할당된다고 생각했습니다. 그런데 반환형이 없는 생성자인데 대입 연산자 기준 우측에서 사용될 수 있었던건 의미만 캐스팅일 뿐, 실제로는 형 변환 연산자의 호출의 다른 방법이기 때문인가요? (실제로는 타입 변환이 아닌 인수가 1개인 기본 생성자 호출인데 사용 방법이 마치 형 변환과 같아서 이름이 그렇게 붙은건가요?)복잡하게 생각하지 않는다면,타입 변환 생성자는 1) 그 자체로 생성자로 활용 2) 캐스팅의 두 가지 사용처가 있고 1), 2) 모두 내부적으로 같은 방식으로 동작함.이라고 이해해도 괜찮을까요? 바로 전에 작성한 질문은 생각을 제대로 정리하지 못해 글이 난해하여 다시 정리하여 올리게 되었습니다.좋은 강의 감사드립니다.정말 많이 배우고있고 큰 도움이 되고 있습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1주차 공간 복잡도 영상이 안나옵니다.
동영상 준비중 입니다. 라고 나오면서 동영상이 안 나오는데 확인 부탁 드려도 될까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[6-F] 질문입니다
안녕하세요 선생님, 최댓값 초기화에 관한 질문을 드립니다. 다른 문제에서는 long long의 큰 값 초기화를 1e18로 했었는데 이번 문제에서는 1e18 + 4인 이유가 궁금합니다. 더해주는 숫자의 값은 크게 중요하진 않고 +1 ~ +4 모두 값을 보정해준다는 면에서 같은 의미를 가지는 것인가요? 단순히 1e18로 초기화할 경우 미세하게 숫자가 부족하여 틀리는 경우가 있으므로 작은 값을 필수적으로 더해주어야 한다고 이해해도 괜찮을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[1-G] 런타임 에러 관해서 질문드립니다
http://boj.kr/320d687034ef4bfa9725d9ddaa53fe63안녕하세요 선생님 강의 잘 보고 있습니다 감사합니다.코드를 제출했는데 런타임에러 out_of_range 라고 뜨는데 왜 그런지 잘 모르겠어요. 한번 봐주시면 감사하겠습니다!!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-H 코드 질문있습니다
안녕하십니까 큰돌님강의 보기 전에 prefix sum 이 기억이 안나서 혼자 풀어봤는데 어디에서 틀린 건지 모르겠습니다 ㅜㅠhttp://boj.kr/b45a32d5c6db4cda94b0a3177e17291a
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
로드맵 관련
기존에 있던 강의랑 겹치는게 있고 안겹치는게 있는거 같은데 이 강의를 듣고 다음 강의는 어떤걸 들어야 할까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제도 이해안가고 풀이도 이해안가요..
문제도 이해안가고 풀이도 이해안가면 포기하는게 맞을까요? ㅜㅜ그냥 어거지라도 보고있는데 이해가안가요,,,첫번재영화 1666 두번째 2666이면10번째는 10666 이런식 아닌가요?? 풀이를 봐도 문제가 답을 뭘 원하는건지도 모르겠어요,,너무답답해요커뮤니티 보니까 저만 이런것 같고,,
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
노래도 내주세요...
중독성 미쳤습니다 선생님ㅋㅋ...1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ (강의 재밌게 듣고 있습니다 ㅋㅋ! 오늘 질문은 여기까지!)
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제는 맞았지만 의문이 생겨 질문 남깁니다!
http://boj.kr/d27f965013354f43a4356d5d2d5baea9해당 문제를 왜 틀린지 몰라서 헤매다가 배열을 초기화해주니 정답처리 되었습니다. 그런데 배열 초기화를 하지 않았다고 하더라도 출력값은 어짜피 동일한데 왜 이전에는 오답처리가 되었는지 이해가 안되어서 질문 드립니다. 가비지 값때문에 그 값만큼 문자가 출력되어서 틀렸다면 이해가 되는데 출력값은 이전과 동일하게 나옵니다. 이전에 오답이었던 이유가 무엇인가요? 이전 코드는 해당 소스코드에서 a배열을 초기화하지 않았습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[7-N] 질문입니다
안녕하세요 선생님, 강의를 듣던 중 궁금한 점이 생겨 질문을 드립니다. https://www.acmicpc.net/source/share/ac40156090a44a3883d00e1da2250094답지의 코드에서 ret == INF일 경우 -1을 출력하고 있는데, 유일하게 ret 갱신이 이루어지는 부분은 ret = min(cnt, ret);이기 때문에 ret값이 INF가 되려면 cnt가 INF이거나 그 이상이 되어야 할 것으로 보입니다. 백트래킹을 위해 추가된 코드 if (cnt >= ret) return; 이 있기 때문에 x, y 끝지점에 도달하기 전에 cnt >= ret일 경우 끝지점에서만 일어나는 ret 갱신이 일어나지 않기 때문에 ret는 INF일 수 있겠구나 생각했지만 그럴 경우 cnt >= ret이 되기 위해 cnt >= INF인 경우가 생기게 됩니다.cnt >= ret이 아닌 이상 언젠가는 y == len에 도달하여 ret 갱신이 이루어질 것이고, 최초 dfs 호출 시 cnt를 0으로 주었기 때문에 cnt >= INF가 되기 위해선 실제로 cnt가 한 칸씩 증가할 수밖에 없습니다. 재귀를 통해 cnt를 하나씩 증가시킬 경우 INF에 도달하기까지 매우 많은 시간이 걸릴 텐데 어떻게 시간 초과가 나지 않는 것인지 궁금합니다. 시간 복잡도를 계산해봤을 때 재귀함수의 시간 복잡도는 O(갈래^깊이), 최악의 경우 for문 5번에서 재귀함수가 모두 호출 되므로 갈래 = 5, cnt를 1씩 증가시켜 INF에 도달하려면 깊이는 INF이므로 O(5^INF)라고 생각했는데 시간복잡도를 잘못 계산한 것일지 어떻게 INF일 때 시간 초과가 나지 않는 것인지 질문을 드립니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
출력 오류 질문있습니다
안녕하십니까 큰돌님http://boj.kr/d880f5abf6944bb2a159e97f98fec6e0강사님 이렇게 코드 작성했는데 테스트 케이스를 입력하면 왜 자꾸 출력이 깨지는지 모르겠습니다 ㅜㅠ
-
미해결[하루 10분|C++] 누구나 쉽게 배우는 C++ 프로그래밍 입문
추상화와 클래스편에서요
main함수에서 Stock temp; 로 선언을 했는데Stock *temp; 로 선언하는 것과의 차이는 무엇인가요?어떤 경우에 위처럼 하는지 아래처럼 하는지 궁금합니다
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
섹션1 레지스터 기초
rbx -> 64 비트 == 8바이트 0x12345678 저장함eax -> 32비트 == 4바이트 0x1234 저장함ax -> 16비트 이고al -> ax의 하위 8비트 == 1바이트인데 0x00을 저장하면 0x1200가 아니고, 0x1230가 되야 하는거 아닌가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-F 문제 수업 질문
http://boj.kr/3ab33c32342c4bb69dab00eeab01852a작성해 본 코드입니다.혹시이분탐색 부분인 while(lo<=hi){ mid = (hi+lo)/2; if(check(mid)){ hi = mid - 1; h_max = mid; } ~~ 에서 h_max = mid 부분을h_max = min(mid, h_max);로 바꾸게 되면 min을 사용해서 최솟값을 잡을 수 있을 줄 알았지만 "틀렸습니다"가 되어 질문드립니다.( 예제는 전부 맞다고 나옵니다) 감사합니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
make_pair 질문입니다!
안녕하세요!8주차 개념강의에도 그렇고 선생님 정답코드에서도 그렇고 push({a, b})대신 push(make_pair(a, b))가 등장하는데요. 혹시 이렇게 하시는 특별한 이유가 있는건가요? 그냥 { }로 해도 정답은 통과되는데 혹시나의 예외상황이 있나 궁금해서 여쭤봅니다.감사합니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
올라왔던 질문이지만 시간초과 질문합니다.
http://boj.kr/b073d7edeccf425cbd7f700cd557fa91 next_permutation을 이용하여 문자열의 요소들을 섞어가면서 각각의 경우에 reverse한 문자열과 일치하는 경우가 있는지 탐색하는 방법을 생각했습니다.그런데 시간 초과가 발생하여 질문드립니다ㅠreverse 함수의 시간복잡도는 O(n) 아닌가요..??어느 지점에서 시간이 문제가 된 것인지 궁금합니다.ㅠ
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-D 다른 방법으로 풀어봤는데 평가 부탁드립니다
안녕하십니까 큰돌님1-D 강의 보기 전에 다른 방법으로 혼자 풀어봤는데 효율적인지 궁금합니다http://boj.kr/37b43fc6a65a47feaaed0c00515f4eed그리고 처음에 pop 사용해서 코드 작성했었는데 오류가 나던데 스택, 큐, 디큐의 pop 함수는 반환값은 없는 건지 궁금합니다 !
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
코드 질문있습니다 !
안녕하십니까 큰돌님동영상 보기 전에 코드를 작성해봤었는데거의 유사하긴 한데 살짝 달라서 코드가 괜찮은 건지 질문 드립니다 !http://boj.kr/aa835786633d47efb583c7c533491bae
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-R 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. http://boj.kr/726cac08b23b48e39d08b58e6bf528c5이와 같이 bool로 작성 해봤는데 틀려서요 한번 확인 부탁드리겠습니다 감사합니다!!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하십니까 선생님 질문이 있습니다!!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. dev c++에 있는 디버깅은 사용 할 수 없는건가요?? 디버깅하기 하면 바로 dev c++프로그램이 종료돼버려서 여쭤봅니다!