[C++] C++로 문자열 연결하기 구현!
·
C & C++ & C#
#include #include using namespace std;class MyString{public: MyString() { // 호출 시점 확인 cout 0) { str_ = new char[size_]; } // 3. 복사 for (int i = 0; i size_); // 중요한 개념 for (int i = old_size; i str_[i-old_size]; } }private: int size_ = 0; char *str_ = nullptr; };int main(){ MyString str1("ABCDE"); //..
[C#] 제네릭(Generic)의 제약조건에 대하여 정리
·
C & C++ & C#
C#의 제네릭은 코드의 재사용성과 타입 안정성을 높이는 데 매우 유용합니다. 제네릭 타입을 선언할 때 특정 조건을 만족하는 타입만 사용하도록 제약 조건을 설정할 수 있습니다. 이러한 제약 조건은 제네릭 메서드나 클래스에서 타입 안전성을 보장하면서 원하는 기능을 제한할 수 있습니다. 제네릭 제약 조건의 필요성제네릭 제약 조건은 제네릭 타입 T에 대해 특정 조건을 부여하여, 특정 메서드나 프로퍼티에 접근할 수 있도록 보장합니다. 이를 통해 불필요한 예외나 런타임 오류를 방지할 수 있습니다.제네릭 제약 조건의 종류C#에서 사용 가능한 제네릭 제약 조건은 다음과 같습니다.1. where T : classT는 참조 타입이어야 한다는 제약 조건입니다.public class ExampleClass where T : ..
[C#] 프로퍼티(property) 완벽 파헤치기!
·
C & C++ & C#
C#에서 프로퍼티는 필드와 메서드의 중간 형태로, 캡슐화를 유지하면서 객체의 데이터 접근을 더 직관적이고 안전하게 할 수 있도록 합니다. 이 글에서는 C# 프로퍼티의 기초 개념부터 심화 내용, 주의할 점, 사용법까지 모두 다룹니다.1. 프로퍼티란 무엇인가?프로퍼티는 객체의 필드에 대한 접근을 제어하는 방법입니다. 필드와는 달리 프로퍼티는 getter와 setter 메서드를 통해 값을 읽거나 쓸 수 있습니다. 프로퍼티는 메서드처럼 보이지 않고 필드처럼 사용되지만, 내부적으로는 메서드로 동작합니다.public class Person{ private string name; // 필드 // 프로퍼티 public string Name { get { return name; } ..
[C#] string.Formating() 다양한 데이터를 특정 형식으로 보기 좋게 만드는 함수!
·
C & C++ & C#
1. string.Format() 개요string.Format()은 C#에서 문자열을 특정 형식에 맞게 변환할 때 사용하는 메서드입니다. 다양한 데이터를 포맷팅할 수 있도록 도와주며, 코드의 가독성을 높이고 숫자나 날짜 등을 보기 좋게 출력할 수 있게 해줍니다.기본 사용법:string result = string.Format("Hello, {0}!", "World");// 출력: "Hello, World!"{0}는 자리 표시자로, string.Format()의 인수 순서에 따라 대체됩니다.2. "{0:n0}" 포맷의 의미"{0:n0}"는 숫자를 천 단위 구분 기호(쉼표)와 함께 표시하고 소수점을 제외하는 포맷입니다. n 포맷 문자열은 Number 포맷으로, 기본적으로 소수점 뒤에 두 자리까지 표시하지만,..
[C#] 델리게이트(Delegate)와 Event로 함수를 깔끔하게 실행해보자!
·
C & C++ & C#
C#에서 델리게이트와 구독-알림 방식(Publish-Subscribe Pattern)을 사용하여 이벤트 기반 구조를 구현하는 방법을 자세히 알아봅시다잉. 이 방식은 특히 코드의 결합도를 낮추고, 여러 컴포넌트가 특정 이벤트에 반응할 수 있도록 할 때 유용합니다. 들어가기전 델리게이트가 왜 필요할까?static void ButtonPressed() // 버튼이 눌렸을 때 실행{ // 버틀이 눌렸을 때 실행할 여러가지 함수들 나열 및 실행} 버튼이 눌리면 아바타에 옷을 입히고~ 무기를 들게하고~ "전장에 나가자!" 라는 로직을 수행하게끔 하고싶다. 이런 과정을 순차적으로 실행되게 하고싶다면 버튼 눌리는 이 함수 내부에 각각의 기능들을 직접 실행시키면 된다는 것을 보편적으로 생각할 것이다. 다만 이런..