Program Language95 Part2. C# 기초 다지기(13. 속성) 일부 다른 언어들도 마찬가지겠지만 보통 정보 은닉과 캡슐화를 위해 필드를 private로 설정하고 public으로 게터(getter)와 세터(setter)를 제공합니다. C#도 마찬가지 방법으로 사용할 수 있지만, 속성(Property)이라는 개념을 활용하면 좀 더 편리하고 안전하게 이러한 목적을 달성할 수 있습니다. 정보 은닉과 캡슐화 C#에서 속성은 객체 지향 프로그래밍의 핵심 개념 중 하나인 정보 은닉(information hiding)을 위한 구문으로, 객체의 필드 값을 안전하고 편리하게 제어할 수 있도록 하는 방법입니다. public class Person { private string name; private int age; public string Name { get { return name.. 2023. 3. 5. [C# WinForm] RadioButton 사용하기 RadioButton 컨트롤은 여러 개의 옵션 중에서 하나를 선택하는 데 사용됩니다. RadioButton 컨트롤은 사용자가 선택한 옵션에 따라 프로그램의 동작을 변경하는 데 유용합니다. 이번 포스팅에서는 RadioButton 컨트롤을 사용하여 선택한 색상에 따라 텍스트의 색상이 변경되는 간단한 예제를 만들어 보겠습니다. 폼 디자인 하기 RadioButton은 일반적으로 그룹박스와 함께 사용됩니다. 그룹 박스(GroupBox)는 RadioButton 컨트롤을 묶어서 그룹으로 만들어 줍니다. 이렇게 하면 사용자가 RadioButton 중 하나를 선택하면 그룹 박스 내에서 다른 RadioButton 컨트롤의 선택이 자동으로 해제됩니다. 먼저 다음과 같이 RadioButton , Groupbox, Label .. 2023. 3. 3. C++ 기초(std::string_view 클래스) std::string_view 클래스는 C++17부터 도입된 새로운 문자열 타입으로, 문자열 데이터의 읽기 전용 뷰를 제공합니다. 이 클래스는 문자열 데이터를 복사하지 않고, 내부적으로 포인터와 길이 정보만을 저장하여 문자열 데이터를 읽을 수 있는 뷰를 제공합니다. 주요 특징 std::string_view 클래스의 주요 특징은 다음과 같습니다. 읽기 전용 뷰 : 원본 문자열 데이터를 수정할 수 없으며, 읽기 전용 뷰만을 제공합니다. 복사 없음 : 문자열 데이터를 복사하지 않으므로, 문자열 처리 성능을 향상시킵니다. 메모리 안전성 : 문자열 데이터를 복사하지 않으므로, 메모리 안전성을 보장합니다. 호환성 : 다른 문자열 타입과 호환되는 타입으로 변환하여 사용할 수 있습니다. 사용 방법 std::string.. 2023. 3. 3. Part2. C# 기초 다지기(12. 인수 전달 방법) C#에서는 메서드에 인수를 전달하는 방법으로 크게 세 가지 방식이 있습니다. 각각의 방법은 서로 다른 방식으로 인수를 전달하며, 각각의 상황에 맞게 사용됩니다. 이번 포스팅에서는 인수를 전달하는 세 가지 방식에 대해서 정리했습니다. 값에 의한 전달(Pass by Value) 값에 의한 전달은 메서드에서 전달된 인수의 값이 복사되어 처리되는 방식입니다. 이 방식으로 전달된 인수는 메서드에서 변경되어도 호출한 쪽에는 영향을 주지 않습니다. static void Increase(int num) { num = num + 1; } static void Main(string[] args) { int number = 5; Increase(number); Console.WriteLine(number); // 출력 결과.. 2023. 3. 2. C++ 기초(std::string 클래스) C++ 표준 라이브러리에서 제공하는 std::string 클래스는 문자열을 다루는 데 매우 유용한 도구입니다. C 스타일의 문자열을 사용하는 것에 비해 많은 이점이 있습니다. 이번 포스팅에서는 std::string 클래스의 사용법과 그 장점에 대해서 정리했습니다. C 스타일 스트링의 문제점 C 스타일 문자열은 null로 끝나는 문자 배열입니다. 따라서 문자열 길이를 추적하기 위해 null 문자를 삽입해야 합니다. 이는 많은 문제를 발생시킬 수 있습니다. 예를 들어, 문자열 길이를 추적하지 않거나, 문자열 길이를 초과하는 메모리 할당 또는 복사 등의 문제가 발생할 수 있습니다. 또한, C 스타일 문자열은 문자열을 조작하기 위한 여러 함수를 제공하지만, 이러한 함수들은 보안에 취약하며 예외를 처리할 수 없습.. 2023. 3. 2. Part2. C# 기초다지기(11. 메서드 오버로딩) 메서드 오버로딩 C#에서 메서드 오버로딩(overloading)은 하나의 클래스나 구조체 내에서 메서드 이름은 같고 매개변수의 개수나 타입이 다른 여러 메서드를 정의하는 것입니다. 즉, 같은 이름의 메서드가 매개변수의 개수나 타입에 따라 다른 동작을 하게 됩니다. 메서드 오버로딩을 사용하면 같은 이름으로 메서드를 여러 개 만들 수 있기 때문에 같은 동작을 하는 메서드라도 매개변수의 종류나 개수를 다르게 하여 코드 중복을 줄일 수 있습니다. 아래는 메서드 오버로딩을 사용한 예제입니다. using System; namespace MethodOverloading_exam { class Calculator { public int Add(int x, int y) { return x + y; } public dou.. 2023. 2. 28. 이전 1 2 3 4 5 6 ··· 16 다음