묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨김영한의 실전 자바 - 기본편
final 참조형 변수
[질문 내용]섹션9 final 변수와 참조 에서 final을 참조형 변수에 붙었을 때 참조 대상 자체를 다른 대상으로 변경하지 못한다는 점에서 이 참조형 변수는 싱글톤(singleton) 패턴이라고 동일시해도 되는 것인가요?
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
15:22에서 TopStudent 가 보이지 않는 문제가 있습니다.
출력로그까지 정상적으로 뜨는데, contents 폴더에서 TopStudent가 보이지 않습니다. TopStudent 가 나타나지 않는 이유가 궁금합니다.일단 코드를 강의코드와 비교하며 개인적으로 재검토를 하였는데, 제가 다시 놓친 무언가가 있는 것인지, 아니며ㅑㄴ 현재 버전에서는 보이지 않게 된 것인지 궁금합니다.DebugGame Editor로 실행하였으며, 출력로그 및 코드 내용은 다음과 같습니다.(출력로그)LogTemp: 저장할 파일 폴더 : ../../../../../../Users/qkrwo/Documents/Unreal Projects/UnrealSerialization/SavedLogTemp: 저장할 파일 전체 경로 : ../../../../../../Users/qkrwo/Documents/Unreal Projects/UnrealSerialization/Saved/RawData.binLogTemp: 변경할 파일 전체 경로 : C:/Users/qkrwo/Documents/Unreal Projects/UnrealSerialization/Saved/RawData.binLogTemp: [RawData] 이름 이득우 순번 16LogTemp: [ObjectData] 이름 이득우 순번 59LogTemp: [JsonData] 이름 이득우 순번 59LogTemp: 패키지가 성공적으로 저장되었습니다. (Student.h)// Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h"#include "UObject/NoExportTypes.h"#include "Student.generated.h"/****/UCLASS()class UNREALSERIALIZATION_API UStudent : public UObject{GENERATED_BODY()public:UStudent();int32 GetOrder() const { return Order; }void SetOrder(int32 InOrder) { Order = InOrder; }const FString& GetName() const { return Name; }void SetName(const FString& InName) { Name = InName; }virtual void Serialize(FArchive& Ar) override;private:UPROPERTY()int32 Order;UPROPERTY()FString Name;};(Student.cpp)// Fill out your copyright notice in the Description page of Project Settings.#include "Student.h"UStudent::UStudent(){Order = -1;Name = TEXT("홍길동");}void UStudent::Serialize(FArchive& Ar){Super::Serialize(Ar); Ar << Name;Ar << Order;}(MyGameInstance.h)// Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h"#include "Engine/GameInstance.h"#include "MyGameInstance.generated.h"struct FStudentData{FStudentData() {}FStudentData(int32 InOrder, const FString& InName) : Order(InOrder), Name(InName) {} friend FArchive& operator<<(FArchive& Ar, FStudentData& InStudentData){Ar << InStudentData.Order;Ar << InStudentData.Name;return Ar;}int32 Order = -1;FString Name = TEXT("홍길동");};/****/UCLASS()class UNREALSERIALIZATION_API UMyGameInstance : public UGameInstance{GENERATED_BODY()public:UMyGameInstance();virtual void Init() override;void SaveStudentPackage() const;private:static const FString PackageName;static const FString AssetName;UPROPERTY()TObjectPtr<class UStudent> StudentSrc;};(MyGameInstance.cpp)// Fill out your copyright notice in the Description page of Project Settings.#include "MyGameInstance.h"#include "Student.h"#include "JsonObjectConverter.h"#include "UObject/SavePackage.h"const FString UMyGameInstance::PackageName = TEXT("/Game/Student");const FString UMyGameInstance::AssetName = TEXT("TopStudent");void PrintStudentInfo(const UStudent* InStudent, const FString& InTag){UE_LOG(LogTemp, Log, TEXT("[%s] 이름 %s 순번 %d"), InTag, InStudent->GetName(), InStudent->GetOrder());}UMyGameInstance::UMyGameInstance(){}void UMyGameInstance::Init(){Super::Init();FStudentData RawDataSrc(16, TEXT("이득우"));const FString SavedDir = FPaths::Combine(FPlatformMisc::ProjectDir(), TEXT("Saved"));UE_LOG(LogTemp, Log, TEXT("저장할 파일 폴더 : %s"), *SavedDir);{const FString RawDataFileName(TEXT("RawData.bin"));FString RawDataAbsolutePath = FPaths::Combine(*SavedDir, *RawDataFileName);UE_LOG(LogTemp, Log, TEXT("저장할 파일 전체 경로 : %s"), *RawDataAbsolutePath);FPaths::MakeStandardFilename(RawDataAbsolutePath);UE_LOG(LogTemp, Log, TEXT("변경할 파일 전체 경로 : %s"), *RawDataAbsolutePath);FArchive* RawFileWriterAr = IFileManager::Get().CreateFileWriter(*RawDataAbsolutePath);if (nullptr != RawFileWriterAr){*RawFileWriterAr << RawDataSrc;RawFileWriterAr->Close();delete RawFileWriterAr;RawFileWriterAr = nullptr; }FStudentData RawDataDest;FArchive* RawFileReaderAr = IFileManager::Get().CreateFileReader(*RawDataAbsolutePath);if (nullptr != RawFileReaderAr){*RawFileReaderAr << RawDataDest;RawFileReaderAr->Close();delete RawFileReaderAr;RawFileReaderAr = nullptr;UE_LOG(LogTemp, Log, TEXT("[RawData] 이름 %s 순번 %d"), *RawDataDest.Name, RawDataDest.Order);}}StudentSrc = NewObject<UStudent>();StudentSrc->SetName(TEXT("이득우"));StudentSrc->SetOrder(59);{const FString ObjectDataFileName(TEXT("ObjectData.bin"));FString ObjectDataAbsolutePath = FPaths::Combine(*SavedDir, *ObjectDataFileName);FPaths::MakeStandardFilename(ObjectDataAbsolutePath);TArray<uint8> BufferArray;FMemoryWriter MemoryWriterAr(BufferArray);StudentSrc->Serialize(MemoryWriterAr);if (TUniquePtr<FArchive> FileWriterAr = TUniquePtr<FArchive>(IFileManager::Get().CreateFileWriter(*ObjectDataAbsolutePath))){*FileWriterAr << BufferArray;FileWriterAr->Close();}TArray<uint8> BufferArrayFromFile;if (TUniquePtr<FArchive> FileReaderAr = TUniquePtr<FArchive>(IFileManager::Get().CreateFileReader(*ObjectDataAbsolutePath))){*FileReaderAr << BufferArrayFromFile;FileReaderAr->Close();}FMemoryReader MemoryReaderAr(BufferArrayFromFile);UStudent* StudentDest = NewObject<UStudent>();StudentDest->Serialize(MemoryReaderAr);PrintStudentInfo(StudentDest, TEXT("ObjectData"));}{const FString JsonDataFileName(TEXT("StudentJsonData.txt"));FString JsonDataAbsolutePath = FPaths::Combine(*SavedDir, *JsonDataFileName);FPaths::MakeStandardFilename(JsonDataAbsolutePath);TSharedRef<FJsonObject> JsonObjectSrc = MakeShared<FJsonObject>();FJsonObjectConverter::UStructToJsonObject(StudentSrc->GetClass(), StudentSrc, JsonObjectSrc);FString JsonOutString;TSharedRef<TJsonWriter<TCHAR>> JsonWriterAr = TJsonWriterFactory<TCHAR>::Create(&JsonOutString);if (FJsonSerializer::Serialize(JsonObjectSrc, JsonWriterAr)){FFileHelper::SaveStringToFile(JsonOutString, *JsonDataAbsolutePath);}FString JsonInString;FFileHelper::LoadFileToString(JsonInString, *JsonDataAbsolutePath);TSharedRef<TJsonReader<TCHAR>> JsonReaderAr = TJsonReaderFactory<TCHAR>::Create(JsonInString); TSharedPtr<FJsonObject> JsonObjectDest;if (FJsonSerializer::Deserialize(JsonReaderAr, JsonObjectDest)){UStudent* JsonStudentDest = NewObject<UStudent>();if (FJsonObjectConverter::JsonObjectToUStruct(JsonObjectDest.ToSharedRef(), JsonStudentDest->GetClass(), JsonStudentDest)){PrintStudentInfo(JsonStudentDest, TEXT("JsonData"));}}} SaveStudentPackage();}void UMyGameInstance::SaveStudentPackage() const{UPackage* StudentPackage = CreatePackage(*PackageName);EObjectFlags ObjectFlag = RF_Public | RF_Standalone;UStudent* TopStudent = NewObject<UStudent>(StudentPackage, UStudent::StaticClass(), *AssetName, ObjectFlag);TopStudent->SetName(TEXT("이득우"));TopStudent->SetOrder(36);const int32 NumofSubs = 10;for (int32 ix = 1; ix <= NumofSubs; ++ix){FString SubObjectName = FString::Printf(TEXT("Student%d"), ix);UStudent* SubStudent = NewObject<UStudent>(TopStudent, UStudent::StaticClass(), *SubObjectName, ObjectFlag);SubStudent->SetName(FString::Printf(TEXT("학생%d"), ix));SubStudent->SetOrder(ix);}const FString PackageFileName = FPackageName::LongPackageNameToFilename(PackageName, FPackageName::GetAssetPackageExtension());//UE_LOG(LogTemp, Log, TEXT("PakageFileName : %s"), *PackageFileName);FSavePackageArgs SaveArgs;SaveArgs.TopLevelFlags = ObjectFlag; if (UPackage::SavePackage(StudentPackage, nullptr, *PackageFileName, SaveArgs)){UE_LOG(LogTemp, Log, TEXT("패키지가 성공적으로 저장되었습니다."));}}UnrealSerialization.Build.cs 에서PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "EnhancedInput", "Json", "JsonUtilities" });를 정상적으로 삽입하였습니다.
-
미해결
vagrant up 에러
vagrant up을 실행하면 vmware 실행을 실패했다고 나오는데 vmnet7만 빼고 실행이 되는데 어떻게 해야하나요..?(base) bomi@bomiui-MacBookPro k8s % vagrant upBringing machine 'cp-k8s-1.30.0' up with 'vmware_desktop' provider...Bringing machine 'w1-k8s-1.30.0' up with 'vmware_desktop' provider...Bringing machine 'w2-k8s-1.30.0' up with 'vmware_desktop' provider...Bringing machine 'w3-k8s-1.30.0' up with 'vmware_desktop' provider...==> cp-k8s-1.30.0: Checking if box 'sysnet4admin/Ubuntu-k8s' version '0.8.6' is up to date...==> cp-k8s-1.30.0: Verifying vmnet devices are healthy...The VMware "vmnet" devices are failing to start. The most commonreason for this is collisions with existing network services. Forexample, if a hostonly network space collides with another hostonlynetwork (such as with VirtualBox), it will fail to start. Likewise,if forwarded ports collide with other listening ports, it willfail to start. Vagrant does its best to fix these issues, but in some cases itcannot determine the root cause of these failures. Please verify you have no other colliding network services running.As a last resort, restarting your computer often fixes this issue.
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
임베딩 모델 실행 오류
가상환경에서 버전을 일치 시키고API키 환경변수로 설정했는데...openAI apiㅏkey 가 없다고 나옵니다.혹시 어느 부분에서 문제가 있을까요?
-
미해결
my sql work brench
안녕하세요 mysql work brench 다운로드 중 질문입니다.윈도우에서 mysql sever 9.1.0 버전 installer 설치했습니다.문제는 installer 설치 후 type and networking 단계에서 next 버튼이 비활성화 되어 있습니다.다른 설정으로 바꿔봐도 계속 비활성화 상태입니다.확인 부탁드립니다.
-
미해결자바 코딩테스트 - it 대기업 유제
송아지를 잡자
홀수 레벨만 본다고 했을 때 이전 홀수 레벨에서 방문한 노드를 이후 홀수 레벨에서는 왜 그냥 넘어가는 건가요?? 말씀하신 것처럼 송아지가 움직이니까 이전 홀수 레벨에서 만나지 않았더라도 이후 홀수 레벨에서 만날 수 있는 거 아닌가요??
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
여러 태그 제어하는 방법 강의 질문입니다
여러 태그 제어하는 방법 강의 질문입니다해당 강의에서 알려주신대로 gmarket 에서 작업하면 봇으로 인식해서진행이 안 됩니다.강의를 위해서 만드신 사이트 말고 실제 gmarket 같은 곳에서할 수 있는 방법을 알려주세요
-
미해결FreeRTOS 프로그래밍
질문있습니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. TASKMAN 에서 ioc파일에서 몇개의 입출력을 건들면 바로 테스크1만 실행이 됩니다이 코드가 추가되는거 같아서 수정했는데도 이러네요 ㅜㅜ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
host_name, name 삭제 이유
단순 데이터가 많다는 이유로 삭제를 해야하는 건가요?
-
해결됨김영한의 실전 자바 - 기본편
메소드 영역, 힙 영역
[질문 내용]섹션8. 자바 메모리 구조와 static 강의 1분 42초 쯤에 김영한 강사님께서 static영역에서 변수 데이터, 변수 선언해서 스태틱을 해버리면 힙 영역의 참조값을 참조할 수 있다고 그러셨는데,이 말인 즉슨, static 메소드에서 매개변수로 변수 데이터를 선언해서 그 매개변수를 통해 참조값을 참조할 수 있다고 얘기하신게 같은 의미인지 궁금해서 질문합니다.
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
강의를 mvc1 까지 듣고 작은 프로잭트를 하는중인데 고민있습니다!
영한님의 강의를 듣고 작은 프로잭트를 하고 있는데 기본적인 내용을 바탕으로 검색해 가면서 하고 있습니다 하는 도중에 하는 김에 조금 이쁘게 만들기 위해서 프론트 쪽 코드는 AI한테 물어보면서 하고 있습니다 아직은 프론트엔드는 모르기때문에 대부분의 코드를 복사 해서 사용중인데 괜찮을까요 ..?
-
해결됨프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
random.choices random.saple 중복 유무
1. 질문하시기 전 유사한 질문이 있는지 검색을 먼저 부탁드려요!전체 소스코드를 올려주시면 답변을 빠르게 드릴 수 있어요!(글보다 빨라요)기초적인 질문은 이미 검색해보시면 사례가 많이 있어요!문법적인 궁금증은 먼저 구글 검색을 통해서 레퍼런스(메뉴얼)을 읽어보시고 해결하시면 실력 향상 100%너무 잦은 질문이나 강의와 관련 없는 질문은 가급적 자제 부탁드려요 ㅠ.ㅠ2. 답변이 다소 늦을 수도 있어요!일반적인 근무시간(9 TO 6) 안에는 답변을 드리도록 노력하고 있어요!문법적인 질문은 먼저 검색을 통해 해결해 보세요!정확하게 질문해주시면 정확한 답변을 받으실 수 있어요!늦더라도 꼭 응답은 드리고 있으니, 먼저 검색을 통해 해결해 보세요!random.sample(population, k, *, counts=None)Return a k length list of unique elements chosen from the population sequence. Used for random sampling without replacement. random.choices(population, weights=None, *, cum_weights=None, k=1)Return a k sized list of elements chosen from the population with replacement. python 공식 문서에는 sample 함수가 중복 없이 생성한다고 적혀 있는 것 같은데, 강의 자료나 강의 내에서는 choices 함수가 중복 없이 생성한다고 적혀 있어서 문의 드립니다
-
미해결장래쌤과 함께하는 쉽고 재미있는 SQL 이야기
array_agg 배열 해제
안녕하세요 array_agg 처리해서 여러 값이 묶인 배열 형태로된 컬럼에 있는 값을다시 꺼내는 방법이 있을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
정적리소스의 클래스패스 질문
정적리소스에 대한 동작원리와클래스패스에 대한 개념이 많이 어렵게 느껴집니다.강사님께서 다른 강의에서 가르처주는 개념인지 궁금합니다.
-
미해결
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성 강의 재생이 되지 않습니다. 확인 부탁드립니다.
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성강의 재생이 되지 않습니다. 확인 부탁드립니다.
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
KeyError: "['name', 'host_name', 'last_review', 'host_id'] not found in axis"
아래의 코드를 입력하면 다음과 같은 에러가 발생합니다 KeyError: "['name', 'host_name', 'last_review', 'host_id'] not found in axis"왜 이런 건가요?ㅠㅠcols = ['name','host_name','last_review','host_id'] print(train.shape) train = train.drop(cols, axis=1) test = test.drop(cols, axis=1) print(train.shape)
-
해결됨대세는 쿠버네티스 (초급~중급편)
docker 명령어 없을 경우 별도 설치해야 하나요?
안녕하세요. Getting-Started Kubernetes 과정에서 docker 명령어가 없어 오류가 나는 경우 docker를 별도 설치하면 될까요? 좋은강의 감사합니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제를 풀 때 변수들을 전역변수로 선언하는 이유가 있나요??
객체지향 공부를 하다 보니 전역변수를 사용하는 것이 실제 사용과 상관 없더라도 잘 안 하게 됩니다. 수업에 보면 대부분의 변수들을 전역변수로 사용하시는데 알고리즘 공부할 때는 웬만하면 전역변수로 선언하는 것이 좋은 건가요? 변수 선언할 때 팁이 있는지 궁금합니다.
-
미해결
CANdb++ Editor Display Mode 질문
CANdb++에 Motorala forward MSB와 LSB 이렇게 나눠져 있는데 실제 실무에서는어떤 모드로 사용하는지 궁금합니다.
-
미해결테스트 with Jest: 제로초에게 제대로 배우기
비동기 함수 테스트 중 특정 케이스 에러
비동기 함수 테스트 강의를 따라했을 때 제 컴파일러에서는 오류가 발생합니다. 다른 테스트 케이스들 말고 아래 두 케이스에서만요.test('okPromise 테스트', () => { const okSpy = jest.fn(okPromise); return okSpy.then((result) => { expect(result).toBe('ok'); }) }) test('noPromise 테스트', () => { const noSpy = jest.fn(noPromise); return noSpy.catch((result) => { expect(result).toBe('ok'); }) })각 테스트 별 에러 메세지는 다음과 같습니다.'Mock<Promise<string>, [], any>' 형식에 'then' 속성이 없습니다.ts(2339)'Mock<Promise<never>, [], any>' 형식에 'catch' 속성이 없습니다.ts(2339)코드를 동일하게 작성했음에도 불구하고, 어떤 문제로 위 에러가 발생하는 걸까요?