본문 바로가기

전체 글

(C/C++ 속성 정리) 29일 차 : 상속이란? 안녕하세요 넬다이입니다. 오늘은 상속에 대해서 설명을 드릴 텐데요 상속을 잘 사용하면 개발이 매우 편하고 은닉성이라던지 다향성을 이용한 다양한 개발이 되기 때문에 이해를 잘하시면 좋을듯싶습니다. 그러면 오늘 정리 시작하겠습니다 상속이란? 상속이란 여러분들이 잘 알고 있는 상속(부모님이나 어떤 사람에게 무언가를 물려받는다)이라는 뜻으로 많이 기억하시고 알고 계실 텐데요 상속이란 말 그대로 상속이라는 프로그램 문법을 통해서 물려받는다는 것으로 이해하시면 됩니다. 제가 여자 친구에게도 상속에 대해서 설명해줄 때는 부모님의 집이 있는데 부모님의 집을 내가 사용할 수 있다는 개념? 부모님 집에 있는 가구 및 주방도구를 사용하는 것 또한 부모의 것이지만 자식인 나도 사용을 할 수 있다고 설명을 하는데요. 그만큼 부.. 더보기
(C/C++ 속성 정리) 28일 차 : 복사 생성자의 이해 안녕하세요 넬다이입니다. 오늘은 복사 생성자에 대해서 알아보는 시간을 가져보도록 하겠습니다. 복사생성자 복사 생성자를 알기 위해서는 클래스가 생성될 때 기본적으로 생성되는 것들이 있습니다. 그것은 1. 기본 생성자 , 2. 소멸자 , 3. 기본 대입 연산자 , 4. 기본 복사 생성자 이렇게 있습니다. 이것은 꼭 암기해주시기를 부탁드립니다. 여기서 기본적으로 기본 복사 생성자가 생성이 되는데요 기본 복사 생성자는 전일 차에서 말하는 얕은 복사를 진행하는 생성자를 만들어 주게 됩니다. 쉽게 코드로 보시지요 class CObj { private: intm_iValue; intm_iValue2; public: //이것은 우리가 생성하는게 아닌 생성자가 없다면은 컴파일러가 자동으로 생성해주는 함수입니다. /*CO.. 더보기
(C/C++ 속성 정리) 27일 차 : 깊은 복사와 얕은 복사의 이해 안녕하세요 넬다이입니다. 오늘은 정말 오랜만에 이렇게 글을 쓰게 되었습니다. 정말 죄송합니다. ㅠㅠ 자 오늘 주제는 깊은 복사와 얕은 복사의 이해입니다. 이해만 하신다면은 쉬운 주제가 될 것이고 그렇지 못하면은 수많은 버그를 만들 수 도 있기 때문에 잘 이해 부탁드립니다 자 일단 우리는 깊은 복사와 얕은 복사를 알아야 되는데요 깊은 복사와 얕은 복사는 메모리 할당 과정에서 메모리 할당 후 그 내부의 값을 복사하는 과정에서 이 현상이 발생하게 됩니다. 얕은 복사 얕은 복사는 메모리 할당을 하고 나서 그 내부의 값을 대입과 같은 행위를 한 뒤 메모리를 해제할 때 문제가 발생하게 됩니다. 예를 들어서 코드로 보여드리겠습니다. class CObj { private : char* m_pName; public : .. 더보기
CMD cannot open file 사용자 이름 또는 암호가 올바르지 않습니다. [해결법] 안녕하세요 오랜만에 찾아뵙는 넬다이 입니다. 오늘 알아볼 내용은 CMD창에서 cannot open file이 걸릴 때 해결방법입니다. 오늘 제가 아침부터 이 문제를 가지고 씨름을 하고 있었는데요 직접 찾아보고 해결하니 쉽게 해결이 되어서 이렇게 글 남깁니다. 실제로 며칠간 고생을 했다지요.... 이렇게 간단한 것을.. 일단 처음으로 해야 할 것은 간단합니다 그 문제를 만들게 된 경로에 사용자 이름과 암호를 지정해 줘야 하는데요 그 방법을 말해드리겠습니다 자 시작-> 실행-> rundll32 keymgr.dll KRShowKeyMgr을 실행하시면 되는데요 이렇게 실행을 하시면은 이런 창이 보일 것입니다. 이렇게 간단한 창인데요 여기서 해당하는 경로가 있다면은 제거해주시고 다시 추가를 해보도록 하겠습니다. .. 더보기
Jenkins SVN Command SVN: E170013 Error 안녕하세요 넬다이입니다. 지금 보실 에러는 Jenkins에서 SVN을 Command로 사용하게 되면은 초기에 발생하는 에러인데요 실제 svn에서는 에러 E170013을 보내주고 있습니다. 이게 무엇이냐 하면은 권한이 없다는 건데요 실제로 Jenkins는 System권한상에서 동작하는 프로그램이 기 때문에 실제 작업환경에서 svn 계정을 연동을 하셨다고 하더라도 실제 System상에서는 그 연동 계정이 없기 때문에 발생을 하게 됩니다. svn계정은 보통 저장을 하게 되면은 글로벌이 아닌 User에 저장이 되는데요 그러한 이유로 System에서는 자기 계정을 모르기 때문에 로그인 계정을 System으로 처리하게 되고 이를 통해서 거부가 되어 Error E170013을 보내줍니다. 그럼 해결법은 무엇인가 하면.. 더보기
(C/C++ 속성 정리) 26일 차 : Static이란? 및 특징 안녕하세요 넬다이입니다. 오늘은 Static에 대해서 정리를 해보겠습니다. static 변수의 특징 static 은 정적인 혹은 고정된 정지 상태이며 정적인 특성을 가지고 있습니다. 전역 변수와 비슷한 특징을 가지며 공간을 할당받고 초기화가 이루어지면 프로그램이 종료될 때까지 소멸이 일어나지 않으며 재초 기화도 일어나지 않습니다. 전역 변수와는 다르게 중괄호(선언된 지역) 내부에서만 접근할 수 있습니다. 간단한 예제 소스입니다 #include using namespace std; void RenderStatic(void) { static int iTemp = 0; cout 더보기
(C/C++ 속성 정리) 25일 차 : Const 한정자란? 안녕하세요 넬다이입니다. 오늘은 Const 한정자에 대해서 알아보는 시간을 가져보겠습니다. const 한정자(제한자) const는 예약어입니다. 예약어는 c++에서 변수명이나 함수명으로 사용할 수 없습니다. 기호 상수를 초기화할 수 있수 없으며 상수의 값을 변경하는 것 또한 안된다. 예로 불가한 코드를 보여드리겠습니다. const int Student = 10; Student = 20; const 가 붙으면 상수 화가 이루어지기 때문에 한 번 초기화된 값으로 고정이 되고 절대 변경할 수 없다. class CTest { private: const intm_iTest; public: voidRender(void) { cout 더보기
(C/C++ 속성 정리) 24일 차 : 객체지향 프로그래밍이란? 안녕하세요 넬다이입니다. 오늘은 객체지향 프로그래밍이란? 에 대해서 정리해 보도록 할 텐데요 기존에는 C언어의 문법이나 기능을 다루었다면은 이제는 C++의 기능들을 다뤄보는 시간을 가져보겠습니다. 객체 지향 프로그래밍이란? 프로그램을 사람이 사는 실세계로 옮겨 놓은 형태, 자신을 나타내는 정보와 실행하는 기능을 포함한다. 클래스는 어떠한 틀을 말하며 사람이라는 클래스가 있다면 학교에 있는 실제 학생들이나 선생님들은 실체화된 객체라고 생각하면 된다. 클래스를 배우기 전에 객체 지향 프로그래밍의 특징에 대해서 알아보도록 하겠습니다. 추상화(abstraction) 실체를 개념화시킨 클래스 정의 작업을 뜻하며 어떤 클래스를 만들 때 포함되어야 할 특성이나 기능들을 개념화시키는 것을 추상화라고 한다. 캡슐화(en.. 더보기