본문 바로가기

전체 글

(69)
Unity(C#) Tuple Tuple 원래 메서드에서는 하나의 값만 리턴이 가능하지만 Tuple을 이용하면 메서드에서 여러개의 리턴값을 줄수있다 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 public class Tuple : MonoBehaviour { void Start() { var temp = TupleTest("슬깃", 20); Debug.Log("이름 : " + temp.name); Debug.Log("나이 : " + temp.age); } (string name, int age) TupleTest(string name, int age) { return (name, age); } } cs 이런식으로 구현하게되면 이름,나이를 반환하는 메서드를 2개 만들필요없이 하나의 매서드로 처리할수있는 장점이 ..
Unity(C#)무명형식,무명메소드 무명형식 무명형식은 선언과 동시에 인스턴스를 할당합니다. 익명 형식을 사용하면 먼저 명시적으로 형식을 정의할 필요 없이 읽기 전용 속성 집합을 단일 개체로 편리하게 캡슐화할 수 있습니다. 형식 이름은 컴파일러에 의해 생성되며 소스 코드 수준에서 사용할 수 없습니다. 각 속성의 형식은 컴파일러에서 유추합니다. new 연산자를 개체 이니셜라이저와 함께 사용하여 무명 형식을 만듭니다. 무명 형식은 object에서 직접 파생되고 object를 제외한 어떠한 형식으로도 캐스팅될 수 없는 class 형식입니다. 그렇기 때문에 enum타입의 무명형식은 불가능하다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 using System; public class GameManager : MonoBe..
Unity(C#) Event Event는 DeleGate에서 앞의 Event만 넣어주면 된다. myDelegate tempGateA; // 델리게이트 event myDelegate tempGateB; // 이벤트 차이점은 Delegate는 외부참조 가능 Event는 외부참조 불가능 Event는 Public를 선언해주어도 외부에서 접근이 불가능하다 사용법1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 delegate void myDelegate(int value); public class GameManager : MonoBehaviour { event myDelegate tempGateB; // 이벤트 void Start() { tempGateB = new myDelegate(Value_A); tempG..
Unity(C#) delegate delegate는 대행자를 뜻으로 C#에서는 함수들을 대신 실행시켜주는 기능을 한다. 사용법1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 delegate int myDelegate(int value); public class GameManager : MonoBehaviour { myDelegate tempGate_1; myDelegate tempGate_2; myDelegate tempGate_3; myDelegate tempGate_4; void Start() { tempGate_1 = new myDelegate(Value_A); temp..
Inspector에 변수 재목정하기 [Header("Rigged model")] ModelJoint[] modelJoints; 이런식으로 적어주면 Inspector창에 이런식으로 위의 제목이표시된다.
Inline함수 인라인 함수란? 함수로 정의된 코드를 일반 코드라인으로 복붙하는 기능을 의미한다. 인라인 함수를 설명하기 전에 함수의 호출 방식을 설명하면 함수를 정의하고 호출하면 해당 함수를 스택에 담게 된다 그다음으로 함수 주소로 가서 해당 함수를 실행하고 다시 해당 함수를 호출한 호출자 함수로 다시 돌아가는 과정을 거친다. 그러다 보니 그냥 main 코드 라인에 적는 것보다 함수를 이용해서 만든 게 조금 더 느릴 수 있다. 이런 점을 보완하기 위해서 나온 것이 Inline 함수이다. 사용방법 1 2 3 4 5 6 7 8 9 10 inline int sum(int a, int b) { return a + b; } int main() { int c = sum(10, 20); // int c = 10 + 20; cout
C++의 Casting,형변환 형변환이란 데이터 타입을 다른 데이터 타입으로 변경하는 것을 의미한다. 형변환 종류는 2가지인데 1. 묵시적 형 변환 사용자가 의도하지 않아도 컴파일러가 변환시켜주는것 2. 명시적 형 변환 사용자가 해당 자료형을 사용자가 지정한 자료형으로 변경하는것 묵시적 형변환 예시 void main() { int temp = 3.14; cout
STL vector에서 push_back과 emplace_back의 차이점 push_back, emplace_back : vector의 요소 끝에 원소를 추가하는 함수이다. 두함수의 차이 : push_back과 같은 삽입 함수들은 삽입할 객체를 받지만 emplace_back과 같은 생성 삽입 함수는 삽입할 객체의 생성자를 위한 인자들을 받아 std::vector 내에서 직접 객체를 생성하여 삽입하므로 임시 객체의 생성과 파괴, 복사(혹은 move)를 하지 않아도 되어 성능상 더 유리하다는 것이다. push_back은 전달받은 객체를 임의 복사하거나 이동시켜서 값을 복사합니다. 즉, 따로 추가 연산작업이 필요합니다. emplace_back은 필요한 인자를 직접 parameter로 받아 내부에서 생성-삽입-소멸 하므로 따로 임시 객체가 생성되지 않습니다. 결과 : push_back..