MoonBug

고정 헤더 영역

글 제목

메뉴 레이어

MoonBug

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기
    • Portfolio
      • Toy Project
      • 쥐돌이볼링
    • Trip
    • Cooking
    • Game
    • Diary
      • 잡생각
    • C++
      • Baekjoon
      • Programmers
      • 개념공부
      • STL
    • Study
      • Linux
      • Graphics
      • UNREAL
      • Computer Network
      • 강화학습
      • Algorithm
      • OS

검색 레이어

MoonBug

검색 영역

컨텐츠 검색

전체 글

  • C++ Lvalue와 Rvalue

    2024.02.07 by J2on

  • C++ 삼항연산자 ( a > b ? 1 : 2 )

    2024.02.07 by J2on

  • 언리얼 프로퍼티 (리플렉션)

    2024.02.07 by J2on

  • [Unreal Engine 5 : C++] 캐릭터를 따라 회전하는 물체 만들기

    2024.02.06 by J2on

  • [Level2.] 광물 캐기 C++

    2024.02.05 by J2on

  • 행렬의 활용 및 R/T/S 변환

    2024.02.04 by J2on

  • [Level2.] 귤 고르기 C++

    2024.02.04 by J2on

  • [Level2.] 구명보트 C++

    2024.02.04 by J2on

C++ Lvalue와 Rvalue

제가 이해한 것으로 작성하는 글이라 틀린부분이 있을 수 있습니다. 혹시 잘못된 부분이 있다면 알려주세요. lvalue와 rvalue를 이해하기 전에 먼저 glvalue와 prvalue, xvalue에 대해 알아야 한다. glvalue (Generalized Lvalue) glvalue는 평가에서 개체, 비트 필드 또는 함수의 ID를 결정하는 식입니다. 라는 microsoft의 설명 쉽게 말해 glvalue는 메모리 주소를 나타내는 표현식이다. 그리고 glvalue에는 lvalue와 xvalue가 속한다. prvalue (Pure Rvalue) prvalue는 연산자의 피연산산자 값을 계산하는 식, 주로 함수 호출 반환 값 or 상수 a = 3 주소 rvalue -> 값 & 주소 이렇게 저장할 수 있다는 ..

C++/개념공부 2024. 2. 7. 17:25

C++ 삼항연산자 ( a > b ? 1 : 2 )

삼항연산자는 C와 C++에서만 존재하는 독특한 연산자 a > b ? 1 : 2 위 식에서는 a와 b를 비교하고 true라면 1을, false라면 2를 return한다. 즉 조건문 ? true일때 값 : false일 때 값 이렇게 활용되는 것이다. 이러한 삼항연산자는 lvalue로써도 사용할 수 있다. ((i < 3) ? i : j) = 7; 이 경우 i가 3보다 작은 경우에 i에 7을 저장하고, 그렇지 않다면 j에 7을 저장한다. 참고 : https://tcpschool.com/cpp/cpp_operator_etc 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com

C++/개념공부 2024. 2. 7. 16:55

언리얼 프로퍼티 (리플렉션)

리플렉션 - 프로그램이 실행시간동안 자기 자신을 조사하는 기능 클래스, 함수, 멤버 변수, Enum타입을 확인하고 정보 수집 / 질의를 통해 조사한다. (데이터 직렬화나 가비지 컬렉션에서도 사용되는 기술) C++는 리플렉션 기술을 지원하지 않으나, 언리얼이 자체적으로 지원한다. 이것이 언리얼 프로퍼티 시스템이다. #include "~~~~~.generated.h" 를 통해 리플렉션이 이 파일을 포함해야 한다고 선언 UFUNCTION UPROPERTY UCLASS UENUM USTRICT 이런 매크로를 추가하여 언리얼 프로퍼티 시스템이 해당 (변수 함수 Enum 등)을 인식하게 한다. UPROPERTY(EditDefaultsOnly, Category=Pawn) 블루프린트에서 어떻게 접근할 수 있는지, Ca..

Study/UNREAL 2024. 2. 7. 01:44

[Unreal Engine 5 : C++] 캐릭터를 따라 회전하는 물체 만들기

언리얼에서 캐릭터나 액터의 움직임을 따라 회전하는 물체를 만들어봅시다. 저는 주인공을 따라 움직이는, 캐릭터만 바라보는 눈알을 만들어 보겠습니다. 기본적으로 Rotation은 벡터를 기반으로 만들어집니다. 플레이어를 바라보는 벡터가 필요한데, 이것은 (플레이어 위치 - 눈알의 위치) 를 통해 구할 수 있습니다. 위의 그림처럼 생각해보면 되겠죠? 위에서 본다면 이런 느낌으로 벡터가 생깁니다. 이렇게 생성한 vector를 FRotator로 변환한 후에, 회전하고 싶은 component에 rotation으로 적용시켜 주시면 됩니다. 코드로 표현하면 아래와 같습니다. void ASuspiciousPicture::RotateEye() { //플레이어 위치를 받아오기 FVector PlayerLocation = P..

Study/UNREAL 2024. 2. 6. 23:57

[Level2.] 광물 캐기 C++

> https://school.programmers.co.kr/learn/courses/30/lessons/172927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 미네랄 벡터를 한 세트당 최대 다섯개로 묶었습니다. 세트 별로 다이아몬드, 철, 돌로 Priority Queue를 이용해 내림차순 정렬하여, 가장 먼저 나오는 세트부터 높은 곡괭이를 부여했습니다. 여기서 실수하기 쉬운 것은... 곡괭이 수를 넘어서는 미네랄들은 터치할 수 없다는 것입니다. 아예 고려할 필요가 없는 것이죠. 그걸 생각 안하고 풀었다가 8번 케이스만 통과 못해서 고민을 좀 했습니..

C++/Programmers 2024. 2. 5. 17:12

행렬의 활용 및 R/T/S 변환

행렬 Table 형태 수의 배열 대각 행렬 대각선에만 요소가 있는 것. 단위 행렬 대각 행렬인데 요소가 다 1인 것. 전치행렬 ( Transpose ) 그냥 간단하게 column과 row를 바꾸는 것. 전치행렬의 전치행렬은 원 행렬과 같다. 역행렬 ( Inverse ) 어떤 행렬에 곱해졌을 때 단위 행렬로 만드는 행렬 A의 역행렬은 A^{-1}로 표현한다. Scailing 대각행렬로 구성해서 곱해준다. 이 때 순서가 중요한데, 순서를 바꾸고 싶다면 원 행렬이 아닌 역행렬을 곱해주어야 한다. 이렇게 순서가 굉장히 중요하다는 것. Rotation 얘도 순서가 바뀌면 역행렬로 변경해야 한다. Translation 이동하는 경우. 사실 그냥 (a,b)를 이동하고 싶을 때 (a + 2, b+3)으로 구성해도 된다..

Study/Graphics 2024. 2. 4. 18:25

[Level2.] 귤 고르기 C++

> https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 귤의 배열을 받아 최소 몇가지 종류로 k개를 고를 수 있는지 확인하는 문제입니다. 각 귤 종류별로 개수를 정리하고, 개수를 priority_queue에 넣어서 개수가 큰 것부터 꺼냈습니다. 확실히 자료구조 사용에 익숙해지니 이런 문제는 쉽게 해결할 수 있네요. STL 최고 > #include #include #include using namespace std; int tCount[100000..

C++/Programmers 2024. 2. 4. 16:07

[Level2.] 구명보트 C++

> https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 잠깐 생각해보면 만약 보트를 둘이 같이 탄다고 했을 때, 가장 합리적인건 조합으로 짜는거겠죠. 그걸 이용하면 쉽게 풀 수 있습니다. > #include #include #include using namespace std; int solution(vector people, int limit) { int answer = 0; int num = people.size(); s..

C++/Programmers 2024. 2. 4. 00:49

추가 정보

인기글

최신글

페이징

이전
1 2 3 4 5 6 7 8 ··· 21
다음
TISTORY
MoonBug © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바