struct (구조체) int main() { struct Point { int x; int y; }; Point p1 = {30, 50}; Point p2; p2 = p1; return 0; }위의 예제를 보면 Point라는 구조체를 정의한것을 볼 수 있다. 특징- 구조체의 초기화는 배열을 초기화하던 방법과 비슷한 방법을 사용해서 할 수 있다.- 점(dot)을 사용해서 멤버에 접근한다.- 구조체를 정의하고 나서 마지막에 꼭 세미콜론(;)을 붙여야한다. class class Point { public : int x, y;// 멤버 변수 Point();// 생성자 }; Point::Point() { x = 0; y = 0; } int main() { Point pt;// 객체 생성 return 0; }위의..
friend #include class CComplex{ float a, b; public : CComplex(float ta = 0.0, float tb = 0.0) { a = ta; b = tb; } void Add(CComplex c) { a += c.a; b += c.b; } }; int IsEqual(CComplex a, CComplex b) { return a.a==b.a && a.b==b.b ; } void main() { CComplex a(1.0, 2.0), b(1.0, 2.0); printf("%d \n",IsEqual(a, b)); } 위 프로그램은 컴파일이 되지 않는다. 이유는 IsEqual()이 CComplex의 private 멤버 a와 b를 접근하기 때문이다. 이에 대한 해결 방..
안전한 문자열 함수- StringCbCopy : 버퍼의 크기 ( 버퍼가 몇 바이트의 크기인가 ) HRESULT StringCbCopy ( OUT LPTSTR pszDest,// 복사 결과를 저장할 버퍼 IN size_t cbDest, (sizeof(TCHAR))// 복사 결과를 저장할 버퍼의 크기 => pszDest의 크기 IN LPCTSTR pszSrc// 복사 원본 (NULL 포함된 문자열) ) - StringCchCopy : 버퍼의 길이 ( 버퍼가 문자열 몇 개를 담는가 ) HRESULT StringCchCopy ( OUT LPTSTR pszDest,// 복사 결과를 저장할 버퍼 IN size_t cchDest, (STRSAFE_MAX_CCH)// 복사 결과를 저장할 버퍼의 크기 => 저장할 글자 ..
참조에 의한 호출 ( call by reference )함수에 전달된 파라미터의 값이 함수 안에서 변경된 경우, 함수를 호출한 쪽에 영향을 미치는 것을 의미한다.c의 경우 주소 연산자 &를 이용한 편법이었다. (call by address) 예제1) c - call by address / call by value void Swap(int* i, int* j) { int t = *i; *i = *j; *j = t; } void main() { int i = 2, j = 3; Swap(&i, &j); cout
- Total
- Today
- Yesterday
- 백준알고리즘
- C
- DATABASE
- C++
- 이진탐색트리
- 운영체제
- WinDbg
- frameLayout
- windows
- 윈도우
- 스프링
- OS
- 정렬 알고리즘
- debug
- BOJ
- 퀵정렬
- HTTP
- ConstraintLayout
- 알고리즘
- adapter
- RelativeLayout
- layout
- Android
- 백준
- handshake
- listview
- LinearLayout
- 스프링부트
- 안드로이드
- 네트워크
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |