inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

순수 가상 클래스 선언과 일반 인트 변수의 선언과 다른가요?

해결됨

C개발자를 위한 최소한의 C++

순수 가상 클래스 강의에서 " virtual int getData() const = 0; " 이 코드는 선언만 있다고 말씀하셨습니다. int a = 0; 이라고 코드를 작성하면 선언 및 정의(초기화)가 된것인데 반해, 함수는 단순히 0을 단순대입했다고 해서 정의가 된것은 아니라는 말씀이신가요? 그렇다면 혹시 " virtual int getData() const; " 만으로 선언이 충분한데 " = 0 " 을하는 이유가 있나요? 단순 초기화 인가요? 또 한가지, 엄밀히 말하면 int a = 0;은 인트 클래스의 인스턴스 a가 선언 및 정의 된거고, 클래스내 함수(메서드)는 인스턴스를 생성하는 건 아니기에 다른건지 궁금합니다. 항상 좋은 강의 감사드립니다!

  • c++
  • microsoft-windows
  • 객체지향
  • 디자인-패턴
배승혁 댓글 2 좋아요 0 조회수 181

책과 관련하여 궁금한 내용이 있습니다.

미해결

게임 수학의 이해

현재 강의에 대한 질문이 아니라서 죄송합니다. 저는 언리얼엔진과 C++에 관심이 있는 사람입니다. 우연히 원티드의 게임개발자 양성과정에서 이득우 지식공유자님께서 참여하시는 것을 봤는데, 이득우님에 대한 소개에서 '이득우의 언리얼 C++ 프로그래밍' 이라는 책을 작성하신 것으로 소개되어 있어서 찾아봤는데, 해당 제목의 책은 없고, ' 이득우의 언리얼 C++ 게임 개발의 정석'의 책을 작성하신 것을 알게되었습니다. 혹시 원티드에 적혀있던 그 책이 ' 이득우의 언리얼 C++ 게임 개발의 정석' 책을 말하는걸까요? 그리고 한 가지 더 궁금한 것이 있는데, 이득우님의 ' 이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의의 내용과 ' 이득우의 언리얼 C++ 게임 개발의 정석' 책의 내용이 거의 비슷할까요? 저는 자바에 대해서는 알고 있어서 객체지향에 대해서는 알지만, C++에 대해서는 잘 모르는 상태입니다. 그래서 만약 책과 강의의 내용이 다르다면 책 보다는 ' 이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의로 공부를 시작하는게 나을까요?

  • 게임수학
  • c++
  • 언리얼
  • 언리얼c++
  • 언리얼엔진
안준수 댓글 1 좋아요 0 조회수 153

dev C++ 콘솔창 바로 닫힘

미해결

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

콘솔창이 바로 닫혀서 출력확인이 안됩니다. 1.#include <stdlib.h>,#include <stdlib.h>의 system("pause");를 return 0;이전에 코드 적기,getch();system함수위에 추가해보기. 도구-환경설정-pause console programs after return 체크하기 위 방법 다 안되고, 채점만 진행중인데ㅠ 뭐가 문제인지 모르겠습니다. 다른 툴 써야할까요?

  • c++
  • 코딩-테스트
iamyeju 댓글 1 좋아요 0 조회수 269

[이벤트와 조건 변수] 강의에서 unique_lock 사용 이유?

미해결

[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버

17분 쯤 unique_lock을 사용하였는데 별도의 인자로 std::defer_lock , std::try_to_lock , std::adopt_lock 등 을 넘겨주지도 않는데 굳이 unique_lock을 사용하는 이유가 있을까요? 그냥 lock_guard를 써도 되지 않나요?

  • c++
  • 네트워크
  • ue-blueprint
  • 게임수학
  • windows-api
김성범 댓글 1 좋아요 0 조회수 166

SEND_ERROR는 Error during configuration가 아니라 Generation이 아닌가요?

미해결

readable_code::CMake - Fancy하게 C++ Project 만들기

안녕하세요 1강 message를 듣는 중 궁금한게 있습니다. SEND_ERROR는 Configuration은 되지만, Build Generation이 안된다고 설명해주셨는데 그러면, Error during configuration가 아니라 Error during Generation이 아닌가요?

  • c++
  • cmake
  • 소프트웨어-설계
OpenJR 댓글 0 좋아요 0 조회수 128

안녕하세요. 이동의미론에 대해 제가 잘 이해했는지 궁금합니다.

해결됨

C개발자를 위한 최소한의 C++

testdata는 class명 입니다. 1. testdata t1 = testdata(1);이 예전에는 임시객체를 생성해서 복사 생성을 했었음. 2. 그런데 그게 비용이 비합리적이니까 move sementic이라는게 나왔고 testdata t1 = std::move(testdata(1));을 사용해서 임시객체를 그냥 t1으로 shallow copy시킴. (C++11) 3. 그런데 최근에는 이런 이동의미론 없이 testdata t1 = testdata(1)이라고 써도. 컴파일러가 자동으로 생성자만 호출하는 t1 인스턴스를 생성하는 코드로 평가를 해버림. 제가 잘 이해하고 있는지 궁금합니다 추가 : Test func(Test src): return src; 해당 함수를 실행 시키면, 값을 반환 할 때, 이동 생성자가 호출되는데 반환시는 해당 콜스택이 사라지는 시점이기 때문에 이전까지는 좌측값이였지만, 다음 라인에 사라지게 될 src를 우측값 취급을 해서 임시객체를 생성하는것으로 이해했습니다. 이렇게 해석해도 괜찮을까요?

  • c++
  • microsoft-windows
  • 객체지향
  • 디자인-패턴
sdfjo1565 댓글 1 좋아요 0 조회수 167

nPr에서 의미없는 연산을 건너뛸 방법이 있을까요?

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

n개의 원소 중 r개 원소로만 이루어진 순열 결과를 얻고 싶어 간단한 수정을 해보았습니다. set이 중복값을 없애주기에 원하는 결과는 얻었지만, 필요없는 연산을 줄이는 방법은 모르겠습니다. (0,1,5에서 바로 다음 연산값인 0,1,9를 찾는 게 아니라, 실제로는 <0,1,5,9,15>의 다음 순열값인 <0,1,5,15,9>를 찾고있음)

  • c++
  • 코딩-테스트
Seob 댓글 1 좋아요 0 조회수 125

5-k 맞왜틀 질문있습니다.

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

안녕하세요. 아쉽게도 강의처럼 2차원 배열에 모아둔 후, 한칸씩 당기는것을 생각을 못해 노가다로 풀어버렸습니다. 다만 알고리즘 자체는 맞다고 생각하고, 예제도 다 맞는데 16%에서 틀려버리네요. 어디가 틀렸는지 궁금합니다. http://boj.kr/76b5753735c448b7a9558225494e778e 감사합니다.

  • c++
  • 코딩-테스트
비스킷 댓글 2 좋아요 0 조회수 81

1-F 질문 있습니다.

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

#include <iostream> #include <string> using namespace std; int main() { string S; getline(cin, S); string result = ""; for (char c : S) { if (c >= 'A' && c < 'Z') { result += (((c - 'A') + 13 ) % 26) + 'A'; } else if (c >= 'a' && c <= 'z') { result += (((c - 'a') + 13 ) % 26) + 'a'; } else { result += c; } } cout << result; return 0; } 이렇게 작성을 하고 실제 출력 값도 맞게 잘 나오는데 1%에서 틀렸습니다가 뜨는데 이유를 모르겠습니다...

  • c++
  • 코딩-테스트
jiwonchoi3794 댓글 2 좋아요 0 조회수 103

컨테이너 클래스 IntArray 과제 피드백 요청

미해결

홍정모의 따라하며 배우는 C++

안녕하세요 10.6 컨테이너 클래스 강의에 IntArray 구현해보았는데 피드백 요청드립니다. 잘못된 곳이라던가 좀 더 공부가 필요한 부분 지적해주시면 너무 감사드립니다. #include <iostream> #include <initializer_list> class IntArray { private: int m_length = 0; int* m_data = nullptr; public: IntArray(const std::initializer_list<int> number) { m_length = number.size(); m_data = new int[m_length]; int count = 0; for (auto& arr : number) { if (count < m_length) { m_data[count] = arr; ++count; } } } IntArray(const IntArray& copy) { m_length = copy.m_length; m_data = new int[m_length]; for (int i = 0; i < m_length; i++) m_data[i] = copy.m_data[i]; std::cout << "복사 생성자 호출" << std::endl; } ~IntArray() { delete[] m_data; std::cout << "메모리 해제" << std::endl; } void reset() { if (m_data != nullptr) { m_length = 0; delete[] m_data; m_data = nullptr; } } void resize(const int& size) { int* temp_data = new int[size]; for (int i = 0; i < size; i++) { temp_data[i] = m_data[i]; if (i >= m_length) { temp_data[i] = 0; } } delete[] m_data; m_length = size; m_data = temp_data; } void insertBefore(const int& insert, const int& before) { if (before < 0 || before > m_length) { std::cout << "배열의 크기 확인" << std::endl; return; } int* temp_data = new int[m_length + 1]; for (int i = 0, j = 0; i < m_length + 1; i++) { if (i == before) { temp_data[i] = insert; } else { temp_data[i] = m_data[j++]; } } delete[] m_data; m_data = temp_data; m_length++; } void remove(const int& number) { if (number < 0 || number > m_length) { std::cout << "배열의 크기 확인" << std::endl; return; } int* temp_data = new int[m_length - 1]; for (int i = 0, j = 0; i < m_length; i++) { if (i != number) temp_data[j++] = m_data[i]; } delete[] m_data; m_data = temp_data; m_length--; } void push_back(const int& number) { int* temp_data = new int[m_length + 1]; for (int i = 0; i < m_length; i++) temp_data[i] = m_data[i]; temp_data[m_length] = number; delete[] m_data; m_data = temp_data; m_length++; } friend std::ostream& operator << (std::ostream& out, const IntArray& arr) { for (int i = 0; i < arr.m_length; i++) { out << arr.m_data[i] << " "; } return out; } }; int main() { IntArray my_arr{ 1, 3, 5, 7, 9 }; my_arr.insertBefore(10, 1); std::cout << my_arr << std::endl; my_arr.remove(3); std::cout << my_arr << std::endl; my_arr.push_back(13); std::cout << my_arr << std::endl; }

  • c++
jjk0806 댓글 2 좋아요 1 조회수 111

데디서버쓰는데 런처에서 받은거 써도 되나요?

미해결

[켠김에 출시까지] UE5 다크앤다커 스타일의 익스트랙션 RPG (D1)

데디서버쓸려면 깃에서 소스코드 빌드해서 써야 되는 걸로 아는데, 런처에서 받은거 써도되나요?

  • c++
  • unreal-engine
  • dedicated-server
  • 언리얼-c++
김기택 댓글 2 좋아요 1 조회수 360

PawnExtensionComponent에 AbilitySystem을 캐싱할 때 TWeakObjectPtr을 사용하지 않은 이유

미해결

[Rookiss University] UE5 Lyra 클론 코딩 (Haker&Liu)

PawnData는 메타데이터를 들고있는 객체라고 생각해서 지나갔는데 AbilitySystemComponent는 TWeakObjectPtr이 조금 더 명확하지 않을까?? 생각이 들어서요..! 물론 UPROPERTY를 썼다고 해도 PlayerState가 없는데 PawnComponent가 정상적으로 존재한다는게 이상한 상태라 상관 없을 것 같긴 하지만 UPROPERTY까지 사용해가면서 들고있어야하는건가? 하는 생각도 있구요 BlueprintRead...가 없어서 BP에서 읽기위함도 아닌 것 같고.. 아니면 혹시 WeakPtr을 사용하는 기준과 ObjectPtr를 사용하는 기준이 나눠져있는걸까요? 라이라에서도 UPROPERTY로 지정되어있어서 이유가 있을 것 같아서 여쭤봅니다!

  • c++
  • unreal-engine
채명석 댓글 2 좋아요 0 조회수 128

GladiatorCore 설정 후 실행시 문제

미해결

[켠김에 출시까지] UE5 다크앤다커 스타일의 익스트랙션 RPG (D1)

GladiatorCore 강의 따라 진행하고 실행 누르니까 계속 크래쉬가 납니다... 이후에 계속 스샷창 뜨면서 언리얼 에디터가 켜지지도 않네요..

  • c++
  • unreal-engine
  • dedicated-server
  • 언리얼-c++
100end 댓글 1 좋아요 0 조회수 294

Asset Manager 관련 질문입니다.

미해결

[켠김에 출시까지] UE5 다크앤다커 스타일의 익스트랙션 RPG (D1)

Lyra에서 에셋을 로드할때 한가지 예시로 GetAsset( ) 함수에서는 TSoftObjectPtr 타입의 포인터를 전달해주고 있는데요, 인자로 받은 소프트 오브젝트를 SynchronousLoadAsset( ) 함수로 실질적으로 메모리에 로드하는걸로 알고있습니다. 그러면 AssetManager의 Primary Asset Types To Scan으로 에셋들이 관리되는 이유가 따로 있을까요? AssetManager의 Primary Asset Types To Scan로 관리되는 에셋들과 내부함수를 사용하여 로드한 에셋들의 관계에 대해 궁금합니다.

  • c++
  • unreal-engine
  • dedicated-server
  • 언리얼-c++
BUOMACC 댓글 1 좋아요 0 조회수 384

2-O 4949번 문제 질문있습니다

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 나름 간소화하여 풀었는데 반례를 못 찾겠습니다 ㅠㅠ https://www.acmicpc.net/source/87277567

  • c++
  • 코딩-테스트
조성욱 댓글 2 좋아요 0 조회수 81

6-C 질문있습니다

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/bd886da1402c420f8b5d6e75d1cdf360 혹시 반례 부탁드려도 될까요? 반례를 구한다면 어떤 방식으로 반례 값을 설정할지도 궁금합니다

  • c++
  • 코딩-테스트
mch473700 댓글 2 좋아요 0 조회수 77

FetchContent로 가져온 외부 라이브러리를 사전에 빌드하는 방법이 있을까요?

해결됨

삼각형의 실전! CMake 초급

안녕하세요 삼각형님! CMake를 활용해 OpenGL 환경을 구성하고 있고, FetchContent를 사용하여 외부 라이브러리를 의존하려고 하는 중입니다. 여기서 문제는 glad 라이브러리는 CMake Configure-Generate 단계만으로는 라이브러리가 빌드되지 않아 사용할 수 없었습니다.. 여기서 CMake 프로젝트 절차가 매끄럽지 못한 점은 프로젝트 개발을 위해 어쩔수 없이 --build 를 수행 한 뒤에 개발이 가능하다는 점이 걸리게 되었습니다. Configure, Generate 단계에, 본 프로젝트 add_executable 한 target을 제외하고 의존하는 라이브러리를 사전에 빌드할 수 있을까요? CMakeLists.txt 첨부 드립니다! https://github.com/DogGuyMan/OpenGL-With-CMake/blob/main/CMakeLists.txt https://github.com/DogGuyMan/OpenGL-With-CMake/blob/main/cmake/Dependency.cmake

  • c++
  • cmake
  • vcpkg
DogGuyMan 댓글 2 좋아요 0 조회수 287

에셋 이주 파일을 다운 받아 압축을 풀면 파일복사 에러가 뜹니다.

미해결

[켠김에 출시까지] UE5 다크앤다커 스타일의 익스트랙션 RPG (D1)

에셋 이주를 위해 파일 압축을 풀 때 위 이미지 오류가 뜨는데, 저만 이 에러가 뜨는건지 궁금합니다. 혹시나 해서 다른 압축 프로그램으로 풀어봐도 같은 현상이 납니다.

  • c++
  • unreal-engine
  • dedicated-server
  • 언리얼-c++
bssani 댓글 3 좋아요 0 조회수 308

3-D 불! 코드 질문있습니다

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/ad93c77cfed245858c644f3adb037853 큰돌님 작성한 코드의 42번 if 문은 있어도 없어도 둘 다 통과하는데 if 문이 없어도 되는 이유가 J 값이 처음부터 가장자리면 바로 출력하면 되는 거고 가장자리가 아니더라도 53번의 if문을 통해서 fvisited 값보다 무조건 작은 jvisited 값이 가장자리까지 가는 로직이라서 그런 거죠 ??

  • c++
  • 코딩-테스트
대기업목표 댓글 3 좋아요 0 조회수 152

인기 태그

인프런 TOP Writers

주간 인기글