코딩각

C++ | 포인터 | 스택과 힙 | 객체의 생성자와 소멸자

생성자와 소멸자 생성자와 소멸자는 클래스가 언제 생성되고 언제 소멸되는지를 보여준다. 스택이냐 힙이냐 종류가 다르면 소멸하는 시기가 다르다. 이 포스팅에서는 스택과 힙에 객체를 만들면 어떤 차이가 생기는지 알아본다. 자바와 달리 C++ 에서는 스택에 객체를 만들 수 있다. new 키워드를 사용하지 않고 객체를 선언하면 된다. 아래의 클래스로 테스트 한다. 생성자는 오버로드 하는데 매개변수가 없는 MyDog 은 스택의 생성에 사용한다. 매개변수가 있는 MyDog 은 힙에 만들 객체에 사용한다. MyDog WangWang 을 선언하는 순간에 생성자가 호출된다. MyDog* ptrDoolly 로 new 키워드로 힙영역에 객체가 생성된다. 다음 delete 로 힙영역에서 소멸시킨다. 결과를 놓고 보면 스택의 소..

코딩(CODING)/C++ 2020. 12. 27. 02:18

C++ | 포인터 | 메모리 | 2. 힙메모리 (Heap Memory)

힙메모리 (Heap Memory) 스택메모리는 컴파일러가 미리 효율적으로 배치할 수 있는 저장 공간이다. 런타임(실행시간)에 생기는 변수들을 고려하지 않아도 되기 때문에 컴파일러는 최적의 효율을 계산할 수 있다. 효율적이라는 뜻은 적은 용량을 사용하면서 속도가 빠르다는 것을 의미한다. (공간 효율성, 시간 효율성) 비주얼 스튜디오에서 프로젝트 -> 속성 -> 구성속성 -> 링커 -> 스택예약크기에서 스택 메모리의 기본값은 1MB 이다. 1MB는 4바이트 정수형이 25만개 정도 들어갈 수 있는 크기다. 1메가바이트가 PC초창기에는 상당히 큰 메모리였다. 지금은 기가단위 메모리를 사용할 수 있기 때문에 비교하면 작은 크기지만 과거 DOS 프로그램에서는 1MB로 충분히 사용했었다. 닌텐도의 초창기 게임기의 메..

코딩(CODING)/C++ 2020. 12. 27. 00:27

C++ | 포인터 | 메모리 | 1. 스택메모리

C++ 에서는 메모리를 직접 운영해야 한다. 다른 많은 프로그래밍 언어에서 가상머신이 메모리를 관리해주는 것에 비해서 C++에서는 메모리를 직접 운영하기 때문에 메모리의 구조에 대한 지식이 필요하다. 프로그래머가 알아야 하는 메모리 종류는 다음과 같다. - 전역변수 공간 - 힙 메모리 - 레지스터 - 코드 공간 - 스택 메모리 1. 스택메모리 C++ 프로그램을 실행하면 main 함수가 먼저 실행된다. main 함수는 자신의 지역변수(local variable)을 가지고 있다. 즉 main 함수안의 { } 중괄호는 지역임을 의미한다. 보통 C++을 처음 시작할 때 이 내용에 대해 충분히 설명하지 않는다. 필자는 첫번째 챕터부터 Hello World 의 원리에 대하여 모든 것을 설명하고 싶은 충동을 느끼곤 ..

코딩(CODING)/C++ 2020. 12. 22. 01:24

C++ | 포인터 | 메모리 주소, 포인터의 선언

포인터를 설명하기 위해서는 컴퓨터 메모리에 대하여 어느정도 이해가 필요하다. 힘들게 포인터 챕터까지 와서 C++을 접는 사람이 많은데 과거에는 컴퓨터 전공수업을 듣지 않고 배우기 힘들었던 것이 사실이다. 필자도 처음 C언어를 배우던 시절 구조체에서 더 이상 진도를 나가지 못했던 기억이 있다. (구조체에서 포인터를 사용한다) 다행히 2020년 현재는 조금만 검색해봐도 포인터 대해 상세한 지식을 얻을 수 있다. 특히 유튜브에서 설명을 잘 해놓은 선생님들이많으니 한 두개 정도는 영상을 보는 것을 추천한다. 워낙 잘 설명한 영상이 많은데 얄팍한 코딩사전 체널의 설명이 가장 초보자 눈높이에 맞는 것 같다. *링크 - 포인터가 뭐고 왜 쓰는건가요? - YouTube 영문 자료로 보면 인도의 IT교사들이 개념도를 잘..

코딩(CODING)/C++ 2020. 12. 20. 22:57

C++ | 반복문 | for 루프 (for loop) | * 로 그리는 도형 예제 (삼각형)

for 루프 for 루프는 정해진 특정 코드를 정해진 횟수만큼 반복하는데 사용한다. for (초기화; 조건식; 증감연산) { 코드블록 } 초기화는 한번 발생하고 조건식이 참이면 코드블록을 실행한다. 반복 횟수를 결정하는 것은 증감연산식인데 1. 초기화 2. 조건식 -> 코드블록 -> 증감연산 에서 2번이 반복된다. int main() { cout

코딩(CODING)/C++ 2020. 12. 20. 20:39
◀ 1 2 3 4 5 6 7 ··· 9 ▶

블로그정보

  • 블로그 이미지
  • ⟪코딩갘 - 100°⟫

    코딩 (파이썬, C언어, 자바) 및 IT정보 블로그

카테고리

  • 분류 전체보기 (1291)
    • IT뉴스 (94)
    • IT일반 (227)
    • IT출판 (161)
      • 워드프레스 | 티스토리 (136)
      • 유튜브 (Youtube) (17)
    • 블록체인 - Blockchain (31)
    • 암호화폐 투자 (191)
    • 운영체제 메뉴얼과 팁 (31)
      • 윈도우11 (10)
      • 리눅스 일반 (21)
    • 코딩(CODING) (380)
      • 자바(JAVA) (82)
      • 파이썬(PYTHON) (92)
      • C# .NET Core (42)
      • 러스트(Rust) (3)
      • C언어(C Language) (41)
      • C++ (41)
      • 자바스크립트(JS) (20)
      • HTML | CSS (36)
      • 루아(Lua) (15)
      • 어셈블리어 MASM (6)
      • PHP (2)
    • 컴퓨터구조 (10)
      • 운영체제 | OS (6)
      • 컴퓨터 하드웨어 (4)
    • FRAMEWORK (58)
      • 자바 | JavaFX (17)
      • 파이썬 | PYGAME (18)
      • 파이썬 | PyQt5 (16)
      • 파이썬 | kivy (5)
      • GDScript(GODOT) (2)
    • 모바일 게임 (8)
    • 알고리즘(Algorithm) (13)
      • C언어 알고리즘 (13)
    • IT 수학 (25)
      • 대수 기초 (9)
      • 지오지브라 계산기 (1)
      • 이산수학 | Discrete Mathematics (2)
      • 수학기초 (13)
    • IT 서적 리뷰 (23)
    • 로블록스(Roblox) (2)
    • 일본어 (8)
    • 영화 (1)
    • IT상품평 (14)
    • 과학일반 (1)
    • 컴퓨터보안 (2)

방문자 카운터

  • 어제 :
  • 오늘 :
  • 누적 :

방문자 그래프

공지사항

  • 비트코인 선물 초보 가이드 모음
  • 하스켈 입문 튜토리얼 모음 - 진행중
  • 코딩 전문 블로그 워드프레스 개설

Copyright © ⟪코딩갘 - 100°⟫. All Right Reserved.

  • 글쓰기
  • 관리자
  • 카테고리
  • 맨위로

티스토리툴바