목록객체 (8)
브래의 슬기로운 코딩 생활
Int형 vs Optional Int형 10 Int Int 형 값을 저장 - var x : Int = 10 Optional(10) Int? / Int! Int형 값을 저장 or 값이 없음(nil) - var y : Int? = 10 - var z : Int! 옵셔널 타입(매우 중요) 값을 반환할 때 오류가 발생할 가능성이 있는 값은 옵셔널 타입이라는 객체로 감싸서 반환함 - Swift에서 기본 자료형(Int, Double, String 등)은 nil값을 저장할 수 없음 - nil을 저장하려면 옵셔널 타입으로 선언해야 함 옵셔널 타입은 변수 또는 상수에 아무런 값이 할당되지 않는 상황을 안전하게 처리하기 위한 방법 제공 옵셔널 타입 변수를 선언하기 위해서는 타입 선언부 뒤에 “?” 문자를 씀 - 주의 : ..
1교시 이론 Exception Handling의 필요성 Exception Handling은 프로그램의 안정성과 신뢰성을 높이기 위해 예외 상황을 적절하게 처리하는 중요한 개념이다. 이를 통해 프로그램이 예외 상황에 대응하고, 문제를 해결하며, 원활하게 실행될 수 있도록 할 수 있다. 중첩클래스, 익명 클래스를 설명하시오 중첩 클래스: 다른 클래스 내부에 정의된 클래스로, 외부 클래스와 밀접한 관련이 있어서 외부 클래스의 멤버와 데이터를 공유할 수 있다. 익명 클래스: 이름이 없는 클래스로, 클래스의 정의와 동시에 인스턴스를 생성하는 방식으로 일회성 작업에 유용하게 사용된다. Generic 등장 배경 및 특징 Generic의 등장 배경: - 재사용성 향상과 타입 안정성 강화를 목적으로 등장. - 타입의 일..
클래스와 객체 객체(object) - 실제로 존재하는 구체적인 대상이고, 다른 객체와 구분되는 고유성을 지니며, 특징과 행동을 갖는 프로그램 실행 주체 클래스(class) 객체의 특징과 행위를 정의하는 프로그램 구성 요소, 동일한 유형의 객체를 추상화시킨 것 - 재사용성(reusability), 이식성(portability), 유연성(flexibility)을 높여줌 - 객체의 유형, 객체를 정의하는 템플릿이라고도 함 객체와 클래스의 관계 “객체는 클래스의 인스턴스(instance)” - 설계도와 생산 공정은 각 부품이 그 특징과 기능을 정의하지만, 실제 조립되어 동작하는 것은 부품이다. - 객체지향 프로그래밍에서도 클래스는 객체의 특징과 기능을 정의하지만, 실제 동작하는 것은 객체들이다. 인스턴스화(in..
오늘은 드디어 새로운 함수나 명령어 들을 배워서 재미있었다. 유니티 내장 함수 OnMouseDown() - 마우스로 클릭할 때 실행 OnMouseUp() - 마우스로 클릭하고 뗄 때 실행 OnMouseEnter() - 마우스 커서가 해당 객체 위에 놓이면 실행 OnMouseExit() - 마우스 커서가 해당 객체 밖에 있으면 실행 transform.Rotate(x,y,z) - x,y,z 축 기준으로 자기 자신을 주어진 각도만큼 회전시키라는 명령어 transform.Translate(x,y,z) - 각 축으로 지정한 거리만큼 이동 (반대방향 = '-') Input.GetKeyDown(KeyCode.?) - 키보드에서 ? 키를 입력 Vector3.forward:전진 Vector3.back:후진 Vector3..
Int형 vs Optional Int형 10 Int Int 형 값을 저장 - var x : Int = 10 Optional(10) Int? / Int! Int형 값을 저장 or 값이 없음(nil) - var y : Int? = 10 - var z : Int! 옵셔널 타입(매우 중요) 값을 반환할 때 오류가 발생할 가능성이 있는 값은 옵셔널 타입이라는 객체로 감싸서 반환함 - Swift에서 기본 자료형(Int, Double, String 등)은 nil값을 저장할 수 없음 - nil을 저장하려면 옵셔널 타입으로 선언해야 함 옵셔널 타입은 변수 또는 상수에 아무런 값이 할당되지 않는 상황을 안전하게 처리하기 위한 방법 제공 옵셔널 타입 변수를 선언하기 위해서는 타입 선언부 뒤에 “?” 문자를 씀 - 주의 : ..
오늘은 사용자 정의 객체와 메소드에 대하여 공부하였다. 사용자 정의 객체란 말 그대로 사용자가 정의 하는 객체 이고 정의하는 방법은 이고 여기서 객체를 정의 하기 위한 함수를 생성자 함수 라고 한다. 또 생성자 함수를 이용하여 메소드를 정의 할 수도 있다. 이렇게 하고 객체를 생성하는 방법은 객체의 인스턴스 명 = new 객체명("속성값1, 속성값2 ... , 속성값n") 객체의 속성을 접근하는 방법은 객체명.속성 으로 접근 가능하다. 객체의 메소드 정의 하기 객체를 다른 객체의 속성으로 정의 위의 이미지 에서 friend의 함수 형식매개변수의 birth는 다른 이름으로 사용해도 가능하다. 만약 그렇게 한다면 this.birth도 그에 맞게 바꿔줘야하고 =뒤에는 똑같이 생성자 함수명(birth)을 써야한다.
오늘은 C++중간고사 점수를 확인하고 수업을했다. 나는 30점 만점에 29점을 맞았다. 만점도 5명이나 있어서 A+ 나올수 있을까 걱정이다. 기말에는 다 맞을수 있게 노력해야 겠다. C++에서 가장 중요한 그림 private: 외부에서 접근 불가능 protected: private와 같지만 파생클래스에서는 접근이 가능 //보통 멤버 변수 public: 외부에서 접근 가능 //보통 멤버 함수 객체의 멤버 호출 직접참조연산자: . - 일반 객체가 멤버에 접근할 때 사용 간접참조연산자: -> - 포인터 객체가 멤버에 접근할 때 사용 배열 배열의 초기화 - int[?] = {?,?,...} (중요) 배열의 이름은 배열의 시작주소 문자열 배열을 복사할 때에는 strcpy()를 사용, string을 사용한다면 그냥..
다음주 가 시험이라서 오늘은 그동안 배운 내용 전부 복습을 한번하고 진도는 조금만 나갔다. 오늘까지 배운 내용이 중간고사 범위이고 오픈북 시험이라 정리를 잘 해가야 할 것 같다. 일단 저번 수업의 중요 내용은 swift 함수는 1급 객체 이다. swift 함수는 1. 변수에 저장할 수 있다 2. 매개변수로 전달할 수 있다. 3. 리턴값으로 사용할 수 있다. 주의: 함수를 변수나 상수에 저장하고 호출할 때에는 매개변수명을 안쓴다. 클로저 - 익명 함수 - 클로저 표현식은 독립적인 코드 블록 {(매개변수 이름:매개변수 타입, ... ) -> 반환 타입 in // 클로저 표현식 코드 } 후행 클로저 -클로저가 함수의 마지막 아규먼트라면 마지막 매개변수명을 생략한 후 함수 (소괄호 외부에)클로저를 작성 클로저의..