프로그래밍 공부

2024/01 107

카테고리 설명
  • 수많은 마라톤 선수들이 마라톤에 참여하였다. 단 한명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였다. 마라톤에 참여한 선수들의 이름의 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때 완주하지 못한 선수의 이름을 return 하도록 함수를 작성하시오. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상, 100,000명 이하이다. completion의 길이는 participant의 길이보다 1 작다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져있다. 참가자 중 동명이인이 있을 수 있다. 입출력 예 participant completion return ["leo", "kiki", "eden"] ["eden", "kiki"] "l..

  • 1.2.6 타입 추론2 decltype(auto) auto를 이용하면 표현식의 타입이 자동으로 연역된다. 만약 const 한정자가 붙어있다면, const 속성을 없애버린다. decltype은 이런 효과가 없기 때문에, 중복코드를 만들게 되는데, 해결을 위해 C++14부터는 decltype(auto)를 도입했다. const string message = "Test"; const string& foo() { return message; } auto f1 = foo(); 여기서 foo()를 호출하여 리턴값을 auto 변수에 담을 수 있다. 그런데, auto는 함수 foo()의 리턴값을 가진 const 속성을 없애기 때문에, f1은 string타입이 되며 복제본이 만들어지게 된다. 만약, f1이 const참조형..

  • 1.2.5 Const 가 사용되는 여러가지 상황 const 키워드는 C++에서 여러 가지 목적으로 사용된다. const의 모든 사용 케이스는 서로 연관되어 있기는 하지만, 각기 미묘한 차이가 있다. const 상수 const는 constant에서 왔다. C에서는 버전 번호와 같이 실행되는 동안 절대 변하지 않는 상수값에 이름을 부여하여 활용할 때 #define 전처리 메크로를 이용한다. C++에서는 #define대신 const 키워드를 사용하는걸 권장한다. cosnt키워드를 이용해서 상수값을 정의하는 것은 보통의 변수를 선언하는것 과 같은데, 단지 const키워드를 선언문 앞에 붙인다는 점이 다르다. const로 선언된 변수는 컴파일러에 의해 변숫값이 바뀌지 않도록 보증되는 것이 일반 변수와 다른 점이다..

  • 1.2.4 예외처리 C++는 유연한 언어이기는 하지만 딱히 안전한 언어는 아니다. 작성한 코드가 엉뚱한 메모리 영역을 헤집거나, 0으로 나누기(컴퓨터가 표현 불가)를 시도해도 컴파일러가 걸러주지 않는다. C+의 익셉션(exeption)은 코드의 안정성을 높이기 위해 언어차원에서 제공되는 기능이다. 익셉션 : 예상치 못한 상황 웹페이지를 가져오는 함수를 작성할 때, 페이지를 서비스하는 인터넷 호스트가 다운되었을 수도 있고, 페이지가 없어지거나, 연결이 해제되어버릴 수도 있다. 많은 프로그래밍 언어에서 함수의 리턴값을 nullptr이나 특별한 에러코드에 매핑하는 방법으로 대응한다. 그러나 익셉션은 더 쉽게 처리할 수 있다. 익셉션에서는 몇가지 새로운 용어가 도입되었다. 특정 코드가 예외적인 상황을 인지하면 ..

  • 언리얼 케릭터의 기본이동과 회전에 대해 알아보자. 키 입력 세팅 우리가 게임을 할 때 WASD나, 위아래 화살표 등, 이동에 사용하는 키의 입력값 들이 있다. 이러한 입력을 언리얼엔진에서는 쉽게 기입할 수 있도록, 프로젝트 세팅을 사용할 수 있다. 여기서 액션 매핑, 축 매핑을 확인할 수 있는데, 각각 다음과 같다. 액션 매핑 : 키가 입력을 한번 받고 행동하는것. 일시적인 행동. 공격 또는 점프 등을 이야기한다. 축 매핑 : 키가 입력을 받고 계속 행동하는것. 입력중에도 계속 행동한다. 기본이동, 회전 등을 이야기한다. 위에 설정한대로, MoveForward 와 MoveRight나 Turn, LookUp등을 세팅해보자. 블루프린트 생성 이전에 c++에서 사용되는 클래스 개념이 블루프린트 라고 이해했었다..

  • https://docs.unrealengine.com/4.27/ko/AnimatingObjects/SkeletalMeshAnimation/Blendspaces/Overview/ 개요 블렌드 스페이스 는 에니메이션을 부드럽게 이어주는데 사용되는 에셋이다. 주로 캐릭터의 모션 블렌딩, 이동 및 회전과 관련된 모션 블렌딩에 적용된다. 개별 하드코딩 노드를 제작하기 보다는, 특정 프로퍼티 또는 족너에 따른 에셋으로 대체하기 위함이다. 일반적으로 에니메이션이 동작하고 있는 과정에서 어떤 값을 기준으로 다른 에니메이션으로 전환할지를 블랜딩 해야 하는데, 이를 하드코딩 으로 구현하기에는 에로사항이 많기 때문. 블렌드 스페이스는 한 축에 각각의 입력값과 그래프상의 지점에 애니메이션이 위치해있는 2D그래프로 생각할 수 ..