[이득우의 언리얼 프로그래밍 Part1 필기] 2. 언리얼 C++ 코딩규칙

2024. 2. 2. 14:24·언리얼엔진5/[Part1] 이득우의 언리얼 프로그래밍

코딩 표준

프로그래밍을 작성하는데 지켜야 하는 프로그래밍 이름 규칙,작성 방법 등을 지정한 가이드라인

절대적으로 좋은 코딩 표준이라는 건 없다.
언리얼엔진은 자체적으로 코딩 표준을 정해 놓았음.


따라서 기존 C++ 코딩 방법을 버리고 언리얼 엔진 코딩 표준을 따라야 함 

하나의 프로젝트는 한 사람이 만드는 것처럼 코딩 해야 함.

-> 유지 보수 비용 감소 



파스칼 케이싱 - 첫 글자를 대문자를 사용해 명명  

카멜 케이싱 - 첫 합성어는 소문자로 나머지는 대문자로

스네이크 케이싱 - 합성어 사이에 언더바(_) 를 사용해 명명


UnrealEngine

unrealEngine

unreal_engine

 


언리얼 엔진은 파스칼 케이싱 사용

언리얼 오브젝트를 상속받는 클래스는 U를 접두사로 붙인다. ex) UGameInstance

*예외*

  Actor 상속을 받으면 접두사로 A 가 붙는다.

  SWidget 상속을 받으면 접두사로 S 가 붙는다.

  추상 인터페이스 클래스에는 접두사 I 가 붙는다.


불리언 변수에는 접두사 b 사용.


int 사용x




uint8, int32 많이 사용됌

기본적으로 C++ 표준 라이브러리는 사용하지 않음.

Const 를 사용할 수 있으면 전부 사용하는 것이 좋음.

동업자가 변경하면 안 되는 것을 알 수 있을 뿐더러 컴파일 타임에서 사전에 체크를 하기 때문에 코드의 정확성이 높아짐

루프를 돌 때 각 엘리먼트들은 Const 로 지정해 주는 것이 좋다.

C++ 17 정도까지는 사용 가능

웬만하면 auto 키워드를 사용하지 말아라. 
iterator 사용 시에는 auto 사용해도 좋음.

헤더에 무언가를 선언 할 때는 꼼꼼하게 봐야 한다. Include 구문 자체가 헤더가 가지고 있는 모든 내용을 컴파일 단계에서 복사하는데, 헤더가 많으면 많아질수록 복사하는 양이 많아져서 컴파일 시간이 많아지게 되는 것의 근원이 된다.

전방선언 -> 이후에 설명

가급적이면 적은 수의 헤더를 Include 해라. (세밀하게)

헤더에서 static 선언 대신 extern 해주어야 한다. Include 시 모든 인스턴스들이 컴파일 되기 때문

 

extern 은 외부 파일에 전역 변수가 있다는 것을 명시만 할 뿐 전역변수 자체를 선언하지 않는다.


 

'언리얼엔진5 > [Part1] 이득우의 언리얼 프로그래밍' 카테고리의 다른 글

[이득우의 언리얼 프로그래밍 Part1 필기] 7-8. 언리얼 C++ 설계(인터페이스, 컴포지션)  (0) 2024.02.14
[이득우의 언리얼 프로그래밍 Part1 필기] 5-6. 언리얼 엔진 리플렉션 시스템  (0) 2024.02.13
[이득우의 언리얼 프로그래밍 Part1 필기] 4. 언리얼 오브젝트 기초  (0) 2024.02.08
[이득우의 언리얼 프로그래밍 Part1 필기] 3.언리얼C++ 기본타입과 문자열  (0) 2024.02.08
[이득우의 언리얼 프로그래밍 Part1 필기] 1. 헬로 언리얼 (가상함수 호출, 로그)  (0) 2024.01.31
'언리얼엔진5/[Part1] 이득우의 언리얼 프로그래밍' 카테고리의 다른 글
  • [이득우의 언리얼 프로그래밍 Part1 필기] 5-6. 언리얼 엔진 리플렉션 시스템
  • [이득우의 언리얼 프로그래밍 Part1 필기] 4. 언리얼 오브젝트 기초
  • [이득우의 언리얼 프로그래밍 Part1 필기] 3.언리얼C++ 기본타입과 문자열
  • [이득우의 언리얼 프로그래밍 Part1 필기] 1. 헬로 언리얼 (가상함수 호출, 로그)
Rocketbabydolls
Rocketbabydolls
Rocketbabydolls
  • Rocketbabydolls
    With The Lights Out
    Rocketbabydolls
  • 전체
    오늘
    어제
    • 전체글 (184) N
      • 프로그래밍 공부 (117)
        • C (16)
        • Jumping into C++ (9)
        • MFC (C++) (1)
        • 자료구조 (1)
        • 알고리즘 (1)
        • 백준 (C++) (74)
        • 핸즈온 머신러닝 2판 (6)
        • Unseen 3기 준비 (4)
        • 원티드 포텐업 게임 개발자 양성과정 2기 (4)
      • 언리얼엔진5 (63) N
        • [Part1] 이득우의 언리얼 프로그래밍 (12)
        • [Part2] 이득우의 언리얼 프로그래밍 (2)
        • [Part2 복습] 이득우의 언리얼 프로그래밍 (3)
        • [Part3] 이득우의 언리얼 프로그래밍 (14)
        • [Part4] 이득우의 언리얼 프로그래밍 (0)
        • FPS 게임 1인 프로젝트 (6)
        • 각종 지식 (11) N
        • 블루프린트 Paper2D 로 게임 만들기 (14)
        • 팀 프로젝트 (1)
      • 일상 (1)
      • ETC (1)
        • 맥북 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      언리얼엔진 eqs generator
      언리얼엔진5 fps 프로젝트
      실전 C 프로그래밍
      언리얼엔진 eqs c++
      언리얼엔진
      실전 C프로그래밍 나중채
      실전C프로그래밍 실습문제
      C언어 실습문제
      핸즈온 머신러닝
      실전 C프로그래밍
      핸즈온 머신러닝 2판
      언리얼엔진 eqs 커스텀
      티스토리챌린지
      실전C프로그래밍
      언리얼엔진5
      실전 C프로그래밍 실습문제
      오블완
      실전C프로그래밍 나중채
      c언어
      c++ 17298
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    Rocketbabydolls
    [이득우의 언리얼 프로그래밍 Part1 필기] 2. 언리얼 C++ 코딩규칙
    상단으로

    티스토리툴바