본문 바로가기

과외

(5)
[C# 때려잡기] C# 강의 25. indexer 전시간에 C#의 연산자 오버로딩에서 링크에 있는 제약을 보면[]연산자는 오버로딩할수없고인덱서로 사용한다고 되어있다. 인덱서란 무엇일까? 캐릭터클래스에 캐릭터가 가지고있을 아이템들을 관리하기위하여 item배열을 만들었다. class Character { private int?[] items; public Character() { items = new int?[10]; } } 기본적으로 10 개짜리로 만들었다.편의상 item클래스를 안만들고 int?형식으로 했다. 암튼이런 아이템이 있다면 해당 아이템에 접근하기위한 함수가 필요할 것이다. public int? GetItem(int idx) { if( idx
[C# 때려잡기] C# 강의 24. 연산자 오버로딩 함수 오버로딩은 다른 행동을하는(파라미터를 달리하여) 같은 이름을 가진 함수를 만드는것이다. 연산자오버로딩은 여기서 함수가 아닌 연산자를 오버로딩 하는것이다. 1, 연산자 오버로딩말그대로 연산자를 오버로딩하는것 사용자 정의 자료형이기때문에 기존 연산자 (+, -, *, /, %, … 등)을 사용하지 못한다. 그러나 연산자 오버로딩을 통하여 사용가능하게 할수있다 1p 와 2p모두를 지원하는 게임을 제작하는중에보스몬스터를 만났을때 1p,2p 모드 둘다 같은 체력과 스피드의 보스가 나오면 1p로 할때 너무 어렵고 2p로 할때 너무 쉬운 상황이 발생할꺼같아2p로 할때 보스의 체력을 1P + 2P로 하고싶다. using System;using System.Collections.Generic;using System..
[C# 때려잡기] C# 강의 13. ref 와 out 함수는return 을 만나면 종료하기 때문에 일반적으로 복수개의 값들을 리턴할수가 없다. 함수를 호출한 곳에 두개 이상의 값을 넘겨주고 싶을때는 어떻게 할까? 1. ref using System; namespace ConsoleApp1{ class Program { static void Test(ref int x, ref int y) { x = 10; y = 20; } static void Main(string[] args) { int x = 0, y = 0; Test(ref x, ref y); Console.WriteLine("{0},{1}", x, y); } }} 다음과 같이 ref키워드를 통하여 해당 변수에 값을 대입하면 결국 해당함수를 사용한 곳에서는 x,y 두개의 값을 받았다고 볼수있다.이렇게 ..
[C++ 때려잡기] C++ 심화강의 12 오버라이딩 (overriding) 2018/08/27 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 1 객체 지향 프로그래밍과 클래스2018/08/27 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 2 접근 한정자2018/08/27 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 3 생성자와 소멸자2018/08/29 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 4 복사 생성자와 깊은 복사2018/08/29 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 5 this 포인터2018/08/29 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 6 Class 선언과 정의2018/08/29 ..
[C++ 때려잡기] C++ 심화강의 4 복사 생성자와 깊은 복사 2018/08/27 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 1 객체 지향 프로그래밍과 클래스2018/08/27 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 2 접근 한정자2018/08/27 - [교육 노트/C++ 심화강의] - [C++ 때려잡기] C++ 심화강의 3 생성자와 소멸자 이전 강의에서 생성자를 배웠다.특히 생성자에서 파라미터를 받아 객체를 생성하면서 각종 초기화 과정을 진행 해 줄 수 있었는데생성자에서는 복사생성자라는 특수한 생성자가 하나 존재한다. 1. 복사 생성자자기 자신과 같은 형태의 객체를 인자로 받을수 있는 생성자를 복사생성자라고 한다. 복사 생성자는 같은 클래스를 인자로 받는 생성자이며 대부분 인자로 받은 클래스의 내용을..