Program Language95 [C# WinForm] GUI 프로그래밍 시작하기 C# 장점은 누가 뭐라 해도 GUI(Graphical User Interface)를 사용하는 윈도우 프로그래밍입니다. C#에는 2가지 GUI 템플릿이 있습니다. 하나는 WinForm이고 다른 하나는 WPF입니다. 앞으로의 포스팅 내용은 WinForm을 시작으로 WPF까지 다룰 예정입니다. 윈폼 프로젝트 생성하기 비주얼 스튜디오 설치는 생략하고 프로젝트 생성부터 진행하겠습니다. 설치 부분은 아래 포스팅을 참고하세요 2022.12.23 - [프로그래밍/C#] - Part1. C# 첫발 내딛기(2. VisualStudio 설치하고 출력하기) Part1. C# 첫발 내딛기(2. VisualStudio 설치하고 출력하기) C# 프로그램을 개발하기 위해 가장 좋은 개발 툴은 비주얼스튜디오(Visual Studio).. 2023. 2. 3. C++ 기초(직원 관리 시스템 - Employee 클래스 구현) 이번 포스팅에서는 Employee 클래스의 정의에 이어 구현 부분을 정리했습니다.(정의 부분은 아래 링크를 참고하세요) [참고 : Employee 정의] 2023.01.31 - [프로그래밍/c++] - c++ 기초(직원 관리 시스템 - Employee 클래스 정의) c++ 기초(직원 관리 시스템 - Employee 클래스 정의) 지금까지 정리한 내용을 바탕으로 만들어 보는 첫 프로그램입니다. 학습 시 참고하고 있는 책에 나오는 예제로 간단한 직원 관리 프로그램입니다. 직원 관리 시스템 회사 직원 정보를 관리하는 todamfather.tistory.com Employee 클래스 구현 맨 처음 생성자 부분부터 살펴보겠습니다. 초기화 부분은 생성자 이니셜라이저를 사용하였습니다. (생성자 이니셜라이저 부분은 [.. 2023. 2. 2. c++ 기초(직원 관리 시스템 - Employee 클래스 정의) 지금까지 정리한 내용을 바탕으로 만들어 보는 첫 프로그램입니다. 학습 시 참고하고 있는 책에 나오는 예제로 간단한 직원 관리 프로그램입니다. 직원 관리 시스템 회사 직원 정보를 관리하는 프로그램은 구조가 유연하고 기능이 편리해야 하기에 객체지향 설계를 따릅니다. 프로그램에서 제공하는 기능은 다음과 같습니다. 직원 채용 직원 해고 직원 승진 직원 조회(과거, 현재) 이 프로그램은 크게 네 부분으로 이루어져 있습니다. Employee 클래스 Database 클래스 Interface 클래스 Client code 이 프로그램에서 클래스 정의는 전부 헤더(.h)파일에 정의하고 구현 코드는 (.cpp)에 작성했습니다. 그리고 혹시 모를 이름의 중복을 피하기 위해 "Record"라는 네임스페이스(namespace)를.. 2023. 1. 31. Part1. C# 첫발 내딛기(31. object 타입) C#에서의 모든 형식은 Object로부터 상속됩니다. 값 형식이나 참조 형식, 사용자 정의 형식 모두 Object로부터 상속됩니다. 따라서 Object는 모든 형식으로 변환이 가능합니다. 물론 그 반대도 가능합니다. 이번 포스팅에서는 Object의 이런 특성에 대해서 정리했습니다. object 타입의 박싱(Boxing)과 언박싱(Unboxing) Object 또는 object는 어떠한 값이라도 할당받을 수 있습니다. 값 형식의 변수가 object 타입으로 변환되는 것을 박싱(Boxing)이라고 합니다. 반대로 object타입이 값 형식으로 변환되는 것을 언박싱(Unboxing)이라고 합니다. 언박싱의 경우 (int)object와 같은 명시적인 캐스팅이 필요합니다. 다음은 박싱과 언박싱의 예를 보여줍니다... 2023. 1. 30. Part1. C# 첫발 내딛기(30. Nullable Type) C#에서는 기본적으로 값 형식의 변수에는 null 값을 할당할 수 없습니다. 하지만 변수타입을 nullable으로 변경하면 가능합니다. C# 2.0부터 도입된 기능으로 Nullable 또는 '?'연산자를 사용하여 변수에 null값을 할당받을 수 있습니다. 이번 포스팅에서는 이와 같은 Nullable 타입에 대한 내용을 정리했습니다. Nullable와 '?'연산자 nullable은 다음과 같이 값형의 변수에 null값을 할당할 수 있게 해 줍니다. Nullable로 정의되며 여기서 T는 데이터형입니다. Nullable a = null; Nullable는 '?'연산자로 대체되어 쓸 수 있습니다. 예를 들어 Nullable, Nullable대신에 다음과 같이 쓸 수 있습니다. int? a = null; flo.. 2023. 1. 29. C++ 기초(유니폼 초기화) c++11부터 타입 초기화 방식을 통일시켰습니다. 중괄호 {....}을 사용하여 클래스, 구조체, 기본자료형, 포인터 등 모든 자료형에 대해서 초기화할 수 있습니다. 이번 장은 중괄호를 사용한 유니폼 초기화(uniform initialization)에 대해서 정리했습니다. 구조체와 클래스 초기화 c++11 이전에는 구조체와 클래스 초기화 방식이 서로 달랐습니다. 구조체는 중괄호로 초기화 가능하지만 클래스는 생성자를 이용한 함수형태로만 초기화가 가능했습니다. 다음 예제를 보시면 그 차이점을 알 수 있습니다. #include struct Point_struct { int x, y; }; class Point_class { public: Point_class(int x, int y) :m_x(x), m_y(y.. 2023. 1. 27. 이전 1 ··· 4 5 6 7 8 9 10 ··· 16 다음