본문 바로가기
반응형

프로그래밍174

객체, 인스턴스, 클래스 용어 정리!! ※클래스, 객체, 인스턴스, 인스턴스화는 분명 정의된 용어입니다. 얼추 보면 다 고만고만하고 비슷비슷해 보이지만 뜻하는 바는 다르다는걸 아시길 바랍니다!! 설명하기에 앞서 예시를 하나 보겠습니다. (직접 만들었습니다.....^^;;) 위 그림을 설명하자면.....;;; 쫄라맨이 과자를 만들 계획을 세우고 재료들을 구성하고 배합하여 과자를 만드는 과정입니다.!? 여기서 과자를 만들 계획을 세우고 어떤 재료가 들어갈지 틀을 구상하는 것이 클래스가 됩니다. 클래스를 기반으로 어떤 과자를 만들지 결정하는 단계를 객체라고 합니다. 어떤 과자(객체)를 만들지 결정했으면 그에 맞는 배합물을 넣고 섞어 완성품을 만들어내는 일련의 과정들을 인스턴스라고 합니다. 그리고 객체에서 인스턴스로 넘어가는 것을 가르켜 인스턴스화 .. 2019. 1. 17.
C++ 클래스 정의, 구조체와 차이점(접근제어 지시자) ※ 클래스를 알기전에 왜 클래스를 사용하는지 이유가 궁금하시면 객체지향 사용하는 이유(클릭)를 가보시기 바랍니다. C++에서 클래스와 비교되는 것이 구조체 입니다. 이 둘의 코드를 비교해 보겠습니다. 구조체 #include using namespace std; struct MyStruct { int num1; char arr[10]; void print(void) { cout 2019. 1. 17.
C와 C++의 차이, 절차지향과 객체지향의 차이점!!(객체지향 사용 이유) ※ 이 글은 C언어를 공부하신 후 읽으시는 것이 좀 더 이해가 빨리 될 것임을 알려드립니다. 또한 굳이 배우지 않았더라도 최대한 이해하기 쉽게 설명해 놓겠습니다. 이 둘의 차이점을 설명하기엔 너무나도 장문이 될 것 같으니 최대한 요약해서 설명해보겠습니다.! 우선 객체지향 언어를 사용한다는 가정하에 속도를 생각하시면 안됩니다. 객체지향 언어를 사용하는 이유(제가 생각하는 이유)는 다음과 같습니다. 1. 효율적인 분산 개발2. 그에 따른 각 개인의 포커싱으로 인한 질 좋은 코딩3. 서로간의 협력과 조율4. 완성 됐을 때의 유지보수 애초에 객체지향 언어는 프로그램 동작속도를 향상시키기 위해 개발된 언어가 아니라위 같이 여러명이 개발할 때 효율적인 코딩을 위해 만들어진 언어라고 생각했으면 좋겠습니다. 학교 수업.. 2019. 1. 17.
C++의 참조자 C++은 C언어와는 다르게 참조자 라는 기능이 있습니다. 이 글을 읽기 전에 '포인터' 라는 개념을 알고 넘어가야 합니다. 포인터를 모르신다면 포인터에 대한 글부터 읽고 넘어가시길 바랍니다. 포인터 보러가기~ 백문이 불여일견!! 예시부터 봅시다. #include using namespace std; void main() { int num1 = 10; int &num2 = num1; //참조자 선언 cout 2018. 6. 24.
포인터(1) 기초 이해 우리가 보통 'int num=10' 이라는 변수를 선언하면 메모리 상에는 4바이트(int형이니깐)짜리 메모리 할당이 이루어지게 됩니다. 메모리구조에 대해서는 나중에 설명하겠지만 일단 필요한 부분만 설명하겠습니다. 저희가 사용하고 있는 일반적인 PC의 메모리는 32비트 기준 0x00000000~0xFFFFFFFF까지 있습니다. (메모리는 16진수로 나타내며 10진수로 표현하면 4,294,967,296바이트를 사용할 수 있는 것입니다. ) ------------------------------------------------------------------------------------------------------------------------------------- 잡소리를 좀 하자면 ㅎㅎ Wind.. 2018. 6. 24.
C++의 자료형 bool C언어와는 다르게 C++에서는 bool이라는 자료형이 존재합니다. bool은 ture와 false를 나타내는 말로 참과 거짓을 표현합니다. C언어에서는 이것을 #define TRUE 1 #define FALSE 0 으로 자주 선언했을 것입니다. 간단한 예제를 통해서 알아보도록 합시다! #include using namespace std; void main() { if (true) { cout 2018. 6. 24.
C++의 namespace의 사용법과 이유(2) using 사용법 앞에서 namespace의 사용법을 설명했습니다. 복습하자면 사용법은 namespace IamA { void printOut() { std::cout 2018. 6. 24.
C++의 namespace의 사용법과 이유(1) C++에는 C에 없는 namespace라는 기능이 존재합니다. namespace라는 기능을 설명하기에 앞서 C++에 특지에 대해 이해하고 넘어갑시다!! C++은 객채지향 언어입니다. C언어는 절차지향 언어이지요. 이 둘을 나눈다면 크게 이렇게 나눌 수 있을겁니다. 그럼 객채지향 언어의 특징은 무엇이냐? 대표적으로 이식성이 좋다는 겁니다. 쉽게 말해서 '어느 잘 만들어진 프로그램' 의 함수와 기능들을 '다른 프로그램에 이용하고 싶을때' 함수충돌, 변수충돌 등의 문제들을 문제없이 사용할 수 있다는 점입니다. 그 이유는 클래스라는 개념과 namespace 덕분에 가능한데 자세한 설명을 나중에 작성하도록 하겠습니다. 여기서는 그냥 이렇다라고 읽으시고 넘어가시길 바랍니다. 그럼 namespace에 대해 설명하겠습.. 2018. 6. 24.
C++의 std, cout, cin, endl 사용법 C++에서는 C언어와는 다른 입출력을 사용합니다. C에서는 입력을 scanf(자료형, 변수), 출력을 printf("출력할 문자열 or 변수", 변수), 문자열 변경은 '\n' 이렇게 해더에 정의 되어 있는 해더파일에서 함수를 호출해 사용하게 됩니다. 하지만 C++에선 에 정의되어 있는 std::를 이용해서 입출력을 사용합니다. 입력은 std::cin>>"변수" , 출력을 std::cout val; std::cout 2018. 6. 24.
반응형

스킨편집 -> html 편집에서