묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
생성자에서 로딩과, Init함수에서 로딩의 차이점이 궁금합니다.
안녕하세요.애셋을 로딩할 때 생성자와 Init함수의 차이 때문에 사용 API가 달라져야하는 이유가 궁금합니다. 생성자 단계에서 단순히 LoadObject<UStudent>(nullptr, *TopSoftObjectPath); 를 통해 로딩할 순 없는 정확한 이유를 모르곘습니다...! 또한 Init()의 LoadStudentObject()에서 LoadObject<>()로 TopStudent를 리턴 받은 후에, 포인터에 대한 nullptr 체크를 따로 하지 않는 이유는 LoadObject또한 해당 애셋이 무조건 있어야 올바르게 동작하기 때문인가요?
-
미해결
안드로이드 스튜디오로 flutter 실행 시 JAVA 오류
웹으론 잘 실행되는데 안드로이드 에뮬레이터나 핸드폰 연결해서 실행시 이런 오류가 뜹니다ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOMEPlease set the JAVA_HOME variable in your environment to match thelocation of your Java installation.Error: Gradle task assembleDebug failed with exit code 1 찾아보니 보통 환경변수 문제인 거 같던데 환경변수는 당연히 수도 없이 확인했고, 구글링하면서 해보라는 거 이것저것 싹 다 해봤는데도 해결이 안 됩니다... 환경 변수는 이렇게 입력되어 있구요java -version 입력 시openjdk version "17.0.14" 2025-01-21OpenJDK Runtime Environment Temurin-17.0.14+7 (build 17.0.14+7)OpenJDK 64-Bit Server VM Temurin-17.0.14+7 (build 17.0.14+7, mixed mode, sharing) flutter doctor 입력 시[√] Flutter (Channel stable, 3.29.0, on Microsoft Windows [Version 10.0.19045.5487], locale ko-KR)[√] Windows Version (10 Pro 64비트, 22H2, 2009)[!] Android toolchain - develop for Android devices (Android SDK version 35.0.1)X Cannot execute $JAVA_HOME\bin\java to determine the version[√] Chrome - develop for the web[X] Visual Studio - develop Windows appsX Visual Studio not installed; this is necessary to develop Windows apps.Download at https://visualstudio.microsoft.com/downloads/.Please install the "Desktop development with C++" workload, including all of its default components[√] Android Studio (version 2024.2)[√] VS Code (version 1.97.2)[√] Connected device (4 available)[√] Network resources 진짜 하루종일 여기저기 다 뒤져가면서 안 해본게 없는 거 같은데 뭘 해봐도 그대로라 미치겠습니다..
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
FArchive 포인터의 해제 질문, 직렬화 BufferArray 질문
안녕하세요.파일을 읽고 쓸 때 FArchive* 객체를 CreateFileWriter나 Reader함수를 통해 생성한 후, 해제를 꼭 해주시는데요.저 Create함수 내부적으로 동적 할당을 진행하는 것이기 때문인가요?또한, UObject클래스의 객체 정보를 직렬화 할 때 Buffer가 따로 필요한 이유가 궁금합니다.마지막으로, 직렬화 된 UObject 객체를 Read할 때만 FMemoryReader가 필요한지 궁금합니다.
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
[해결완료] TodoItem을 import했지만, 코드에서 사용하지 않아서 발생하는 ESLint 경고
한 입 크기로 잘라먹는 리액트 책 잘 보고 있습니다.카운터앱 프로젝트는 완료 후,두 번째 할 일 관리 앱 실행 중에 문제가 발생해서 문의드려요. 1. 문제 : 326쪽까지 문제없이 잘 실행이 되었는데, 327쪽 <div>{it.content}</div> 이 코드를 넣었을때부터 327쪽 책과 동일하게 코드 넣었는데, 에러 문구가 아래처럼 나왔어요. WARNING in [eslint] src\component\TodoList.js Line 1:8: 'TodoItem' is defined but never used no-unused-vars webpack compiled with 1 warning TodoItem을 import했지만, 코드에서 사용하지 않아서 발생하는 ESLint 경고인 것 같은데, {todo.map((it) => ( <TodoItem key={it.id} content={it.content} /> ))}여기서 TodoItem이 개별 할 일을 나타내는 컴포넌트라고 가정하고 content를 props로 전달했습니다.(이때, key 값으로 it.id를 사용하여 React에서 리스트 렌더링 최적화를 도와야 합니다.)파란색 부분과 같은 조언을 받아 코드를 수정했더니 npm run start 실행하면 서버에서 지금까지 한 모든 화면이 안 보이고 백지화 되었어요. ㅠㅠ 기존에 html5로 이펍3 만들기 조금 배웠고, css개념 어느 정도 이해하는 수준의 초보인데,책 보고 프로젝트1 마치고, 프로젝트2도 거의 다 와가서 재미있게 하는 중에 날벼락이 ㅠㅠ; 혼자서는 도저히 해결이 안 될 거 같아서 강의등록 후 문의드려요.. 초보라 문의도 이렇게 하는게 맞는지 모르겠네요.답변 부탁드릴게요~ 참고 todoeditor.js return 이하App.js import "./App.css"; import Header from "./component/Header"; import TodoEditor from "./component/TodoEditor"; import TodoList from "./component/TodoList"; import { useState, useRef } from "react"; const mockTodo = [ { id: 0, isDone: false, content: "React 공부하기", createDate: new Date().getTime(), }, {id: 1, isDone: false, content: "빨래 널기", createDate: new Date().getTime(), }, {id: 2, isDone: false, content: "노래 연습하기", createDate: new Date().getTime(), }, ]; function App() { const idRef = useRef(3); const [todos, setTodos] = useState(mockTodo); const onCreate = (content) => { const newItem = { id: idRef.current, content, isDone: false, createDate: new Date().getTime(), }; setTodos([newItem,...todos]); idRef.current += 1; }; return ( <div className="App"> <Header /> <TodoEditor onCreate={onCreate} /> <TodoList todos={todos}/> </div> ); } export default App;
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링컨테이너에 대해서
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]스프링컨테이너는 그러면 단순히 브라우저에서 받은 요청을 컨트롤러에 매핑시켜주어 스프링컨테이너에 등록되어 있는 빈? 이라는 것과 매칭 시켜 존재한다면 viewResolver에 연결시켜 화면을 띄워주고 없다면 오류를 발생시켜 주는 역할인가요?
-
해결됨핵심만 골라배우는 JavaScript
DOM 표준 레벨
이거는 알아둬야 되는 건가요?공통된 개발 규칙을 위한 표준이란 게 무슨 뜻인가요?
-
해결됨Git & GitHub, 원리부터 차근차근 - 근본깃 [완성편]
tracked 상태는 한번 파일이 staging area로 올라간 상태면 계속 유지되나요?
working directory에 circle과 rectange 파일이 있다고 가정하고, 이 파일들이 staging area를 걸쳐 repository에 commit이 완료된 상태라고 가정하겠습니다. 이 과정에서 circle 파일의 내용을 수정한다면, 이 circle 파일은 tracked 상태로 남아있는 것인지 아니면 내용이 수정되었기 때문에 untracked 상태로 변경되는 것인지 궁금합니다. 또한, 만약 위 상황에서 circle 파일의 내용이 변경되었더라도 동일한 circle이라는 파일명을 가지고 있기 때문에 tracked 상태가 유지된다면, circle 파일을 복사한 새로운 이름을 가진 파일 (recircle)이라는 파일의 상태는 tracked인지 untracked인지 궁금합니다.
-
미해결한 입 크기로 잘라먹는 타입스크립트(TypeScript)
mui라이브러리 설치 후 tsconfig 오류
안녕하세요 타입스크립트 tsconfig 기본 설정 후에 yarn으로 mui라이브러리를 설치했는데 해당 오류가 뜹니다..어떻게 해결해야 하나요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
MemoryPool Pop 락여부
아래 박스 쳐진 코드 부분에서 header 부분은 생성하는 부분입니다. 생성자를 호출한다는 것은 "메모리쓰기"를 한다는 것인데 멀티쓰레드 환경에서 락을 걸어야 하는 것 아닌가요?제가 정확하게 몰라서 이렇게 질문 남깁니다.
-
미해결코딩 몰라도 OK! CursorAI로 시작하는 개발 생활 (웹/초급)
교육 예시 파일들이 다운로드 안됩니다.
info 작성 예시 다운로드info 탬플릿 다운로드 두개의 파일들이 권한이 없네요???
-
해결됨김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
파일 input,output 말하는 스트림의 뜻을 모르겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. File로 문자 파일 읽기를 복습하다가 I/o스트림 의 '스트림'의 뜻를 몰라서 질문을 드립니다.9:30 초 부분에서 "I/O 스트림이 아니라 람다와 스트림에서 사용하는 스트림이다"라고 하였는데 , 람다와 스트림에서 사용하는 스트림은 아직 배우지를 않아서 모른다 치더라도, I/O 스트림은 저의 생각으로는 여기까지 공부했다면 알아야 하는것 아닌가 라는 생각에 갑자기 멍해지더라고요. 혹시 I/O스트림의 정확한 정의와 뜻을 알켜주실수있으신가요? 아니면 어느 부분을 복습 해야지 I/O스트림에 대해서 정확히 알 수 있을까요?답변 부탁드립니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-L 코드 질문있습니다
안녕하십니까 큰돌님http://boj.kr/bcfbc194eb8a4428b65f1346ab850c42코드 작성 중 ret = max(ret, v.size()); 이렇게 하니까 오류가 나서tmp = v.size(); ret = max(ret, tmp); 이렇게 고치니까 잘 작동했습니다. v.size()는 왜 안 되는 것인지 궁금합니다 !
-
미해결비전공자도 이해할 수 있는 AWS 입문/실전
EC2 인스턴스 msa 구조
안녕하세요 강의를 듣다 고민이 생겨 질문드립니다.지금 msa 구조로 간단하게 프로젝트 진행중인데 이런경우에는 ec2 인스턴스를 여러개 만들어서 진행해야하나요? gpt 는 도커를 이용해서 하나의 ec2 인스턴스에 하는 것도 하나의 방법이다. 라고 말하긴 하는데 어떻게 하는게 맞을까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
@AuthenticationPrincipal AccountDto 관련
실제로 UserDetails를 구현하고 있는 건 "AccountContext" 이지 "AccountDTO"가 아니기 때문에, @AuthenticationPrincipal AccountDto accountDto를 하면 null이 반환될 수 있지 않나요?그래서 차라리 @AuthenticationPrincipal AccountContext accountContext를 해서 if (accountContext != null) { model.addAttribute("username", accountContext.getUsername()); } else { model.addAttribute("username", "비회원");}이렇게 하는게 더욱 올바른 방법이 아닌가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
버그인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]버그인지 궁금합니다..영상보고 차근차근 따라하다가 해결아닌 해결을 했는데 이게 정상적인건지 궁금합니다.처음에 첫번째 사진과 같은 스프링부트 프로젝트를 설정하고 build.gradle을 오픈하니 2,3번째 사진과 같은 에러가 발생했습니다. 해결전 설정은 아래와 같았습니다. 이전에 이걸로 질문글 올렸는데 java 버전을 17버전으로 설치해보라고 하셔서 jdk 17버전으로 설치했습니다. 설치후Project Structure에서 sdk를 변경해주었습니다.그리고 build.gradle 파일에서 다음과 같이 전후 languageVersion = JavaLanguageVersion.of(21)을languageVersion = JavaLanguageVersion.of(17)로 변경까지 해준 후에야 gradle 파일을 리로드하니까 되더라구요. 그런데 여기서 이제 궁금한것은 다시 설정을 이렇게 바꾼후에 build.gradle 파일을 리로드해도 되더라구요? 심지어 아래 사진처럼Setting -> Build -> BuildTools -> Gradle에 있는Gradle JVM이 지금 JAVA_HOME으로 되어있는데jdk 22버전으로 되어있습니다.또한 JAVA_HOME 경로또한 아래와 같습니다.보시다시피 jdk 22버전 경로가 저장되어있죠. 그러니까 전부 jdk 22버전으로 되어있는데 jdk 17버전 설치후 build.gradle에 있는languageVersion = JavaLanguageVersion.of(17)이것만 17버전으로 바뀌었을뿐인데 정상적으로 로드가 되는건가요? JAVA_HOME같은 경로도 17버전 폴더로 모두 변경해야 동작할줄 알았는데요..
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
SendBuffer질문있습니다.
SendBufferHelper를 TLS로 구현을 해서 각 쓰레드가 고유한 SendBuffer인스턴스를 갖게 되는데 ArraySegment<byte> openSegment = SendBufferHelper.Open(4096); byte[] buffer = BitConverter.GetBytes(knight.hp); byte[] buffer2 = BitConverter.GetBytes(knight.attack); Array.Copy(buffer, 0, openSegment.Array, openSegment.Offset, buffer.Length); Array.Copy(buffer2, 0, openSegment.Array, openSegment.Offset + buffer.Length, buffer2.Length); ArraySegment<byte> sendBuff = SendBufferHelper.Close(buffer.Length + buffer2.Length); Send(sendBuff); 그럼 이부분에서 A라는 쓰레드가 Open과 Close를 통해 고유한 SendBuffer의 buffer에 정보(패킷)를 저장을 하게되고 그 정보를 Send하게 되고 그걸 sendQueue에 그냥 저장만 한 상태라고 가정을 해보겠습니다. 또 B라는 쓰레드도 위 과정을 해서 Queue에 저장을 하게된다고 하겠습니다.여기서 궁금한게 일단 A 와 B가 Send를 한 그 정보는 각 쓰레드가 고유한 _buffer에 저장된 정보이고 만약 다른쓰레드가 큐에저장된 값을 보낸다고 할때 ArraySegment는 원본을 참조하니까 A와 B의 고유한 인스턴스에 접근을 해야하는거 아닌가요..? ArraySegment가 원본을 [참조] 하니까 접근을 하지만 [읽기만] 하기때문에 괜찮다. 이렇게 이해를 하면되는건지 아니면 제가 잘못이해하고있는건지 궁급합니다.
-
해결됨웹소켓/STOMP 채팅서비스(spring, vue, redis)
질문있습니다
채팅과 관련된 API를 설계할 때 보면 Controller 레이어에서 @AuthenticationPrincipal 파라미터를 사용해서 사용자의 정보를 가지고 오는 것이 아닌 Service 레이어에서 SecurityContextHoler를 통해 사용자의 정보를 가지고 오는데 이는 웹소켓 같은 경우에는 Header에 JWT 토큰 정보를 담을 수 없기 때문이다라고 이해하면 될까요??
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
정규표현식으로 처리해도 상관없나요 ?
export default function solution(str) { let answer = str.replace(/([a-z])|([A-Z])/g, (_, lower, upper) => lower ? lower.toUpperCase() : upper.toLowerCase(), ); return answer; }속도는 더 빠른거 같은데문제중에 정규표현식 못쓰는 경우는 없는건가요 ?
-
미해결
k8s 접근 문제
cat ~/join.sh을 하니 다음과 같은 내용이 나왔습니다kubeadm join 192.168.56.30:6443 --token 5v22wu.td05ps0r0p1ssinz --discovery-token-ca-cert-hash sha256:396c7e7a04e0cde77225aa42baf35beaeb8c4d9ee9006f91e8fe06750b12ddbb 그리고 이를 다른 클러스터에 붙여넣은 후 확인하면이렇게 나옵니다.이후 https://192.168.56.30:30000/#/login해당 링크로 접근하면 사이트에 연결할 수 없는데요https://kubetm.github.io/k8s/02-beginner/cluster-install-case7/ 무언가 이슈가 있을까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
새 강의쿠폰 질문있습니다
저번에 사놓고(2시간들음)다시 공부를 시작하려는데 혹시 새로운 강의로 들을수있을까요! 이번에는 꼭 완강 하겠습니다