본문 바로가기

프로그래밍75

const 멤버 함수와 비 const 멤버 함수 정리 멤버 함수에 const 를 붙이고, 안 붙이고의 차이는 소소해 보이지만 굉장히 다른 규칙이다. 일단, 규칙을 모르고 코딩을 했다가는 컴파일부터 불가능 할 것이다. 또한, 규칙이 까다롭다고 사용하지 않는다면, 그 코드는 굉장히 취약한 상태가 될 것은 뻔할 것이다. 이러한 const 을 사용하는 방법을 예제로 간단하게 정리하겠다. 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 32 33 34 35 36 37 #include using namespace std; class Point { int x; int y; public : Point (int _x = 0, int _y = 0) : x(_x), y(_y).. 2017. 9. 14.
[C/C++] 전처리기 0. 정리에 들어가기 앞서서.. 오늘은 전처리기에 대해서 정리를 하고자 합니다. 그런데 우리가 프로그래밍을 하면서 전처리기라는 것에 대해서 꼭 알아야만 할까요? 이름도 왠지 어려워 보이는 데, 자주 접하는 단어이기는 하고.. 무슨 일을 하길래 자주 접할 만큼 강조되는 단어일까 싶으실 겁니다. 하지만, 다른 용어들도 처음 접할 때만 어렵다는 느낌이 드는 것과 같이 전처리기라는 용어도 쉽다는 느낌을 얻으실 수 있다고 생각합니다. 그러기 위해서는 오늘도 배움의 연속이겠네요. 그럼 정리를 시작하겠습니다. 1. 전처리기란? 처음 프로그래밍을 접하는 분들은 #include 또는 #define 만이 전처리기의 전부라고 생각하시는 분들도 계실 것입니다. 하지만, 앞서 말한 두 가지는 전처리기의 일부라고 할수 있습니다... 2017. 6. 20.
[C/C++] rand, srand로 랜덤 뽑기(로또/lotto) 프로그램 만들기 0. 서론 이번 포스팅은 rand()와 srand() 함수를 이용하여, GUI 없는 아주 간단한 로또 프로그램을 만들어 볼 생각입니다. 사실, 이 프로그램은 굉장히 간단합니다. 위에서 말한 것처럼 rand()와 srand()가 어떤 용도로 사용하는 것인지, 또한, C언어를 아주 조금만 알면 바로 만들 수 있을 정도의 난이도이기 때문입니다. 물론, GUI가 들어간다면 말이 달라지겠지만 말입니다. (그래도 조금 더 귀찮아질 뿐, 난이도는 차이가 없을 듯 합니다..) 1. rand() 함수는 뭘까. 그러므로, 이번 포스팅의 목적이기도 한 rand, srand 함수에 대한 설명을 먼저 하겠습니다. 먼저, rand() 함수를 사용하기 위해서는 헤더파일을 추가해야 합니다. rand() 함수는 stdlib.h을 포함.. 2017. 6. 15.
[C/C++] 함수포인터(function pointer) 정리 0. 서론 오늘은 어떤 걸 정리해볼까 생각을 하다가 문득 함수포인터에 대해서 생각이 났습니다. 그래서 바로 정리를 하고자 부랴부랴 공부(공부라고 쓰고 베껴 적기라고 말한다)를 했습니다. 예전 C 언어 공부를 할 때는 포인터는 어렵지만 알아가는 재미에 점점 재미를 붙였는데 함수포인터는 그닥 재미를 느끼지 못했습니다. 그래서 왜 그럴까 생각을 해봤습니다... 결론은.. 함수포인터를 자주 사용하지 않아서라고 잠정 결론을 내게 되었습니다.. 함수 포인터를 공부하면서 느낀 점은 코드 정리가 편할 것 같았습니다. 앞으로 함수포인터에 대해서 정리하겠지만, 비슷한 함수들의 기능을 하나로 묶어서 함수포인터로 정리해놓는다면, 나중에 사용할 때는 비슷한 정리를 쉽게 사용할 수 있을 것 같다는 생각이 들었습니다. 어쨌든, 이.. 2017. 5. 30.