반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- file write
- lua interpreter
- 중소규모택지
- object
- TCP/IP
- 월세
- lua install
- 엑스퍼트2주년
- QT TCP
- lua setup
- Lua
- 티몬삼겹살데이
- lua for windows
- #신혼부부 #결혼준비 #신혼부부희망타운신혼부부특별공급
- 국토교통부
- 엑스퍼트생일축하해
- 강남역맛집 #육전국밥강남역점 #강남국밥맛집 #서울국밥추천 #강남육전맛집 #강남혼밥 #강남역점심 #서울국밥집 #강남수육국밥 #육전정식
- 순남시래기 #교대맛집 #교대역맛집 #한식맛집 #시래기국 #서울맛집 #가성비맛집 #건강한식단 #셀프반찬 #직장인맛집
- #서초구맛집 #교대역된장찌개 #옥된장교대점 #서초된장맛집 #교대직장인맛집 #된장찌개전문점 #서울된장정식 #혼밥맛집 #건강한한끼 #교대점심맛집
- 수도권주택공급
- 등록임대주택
- #부동산전자거래 #부동산전자계약 #부동산계약 #부동산전자계약방법 #부동산전자계약하는법 #부동산계약방법 #부동산중개수수료 #부동산중개수수료아끼기 #부동산복비아끼기
- 편편집 #강남역맛집 #강남샤브샤브 #강남무한리필 #편백찜맛집 #월남쌈맛집 #샤브샤브맛집 #가성비맛집 #강남회식 #강남데이트
- C API
- C++ API
- FILE TRANSFER
- QTcpServer
- 찾다죽는줄
- 육전국밥 #강남역맛집 #24시간맛집 #소고기국밥 #육전 #모둠전 #해물파전 #강남한식 #혼밥맛집 #강남역국밥
- 전동포 #송파구전기자전거 #전동킥보드수리 #모토벨로대리점 #전기자전거판매 #전동스쿠터수리 #배터리수리 #전기자전거수리 #송파구전동킥보드 #전동이동수단
Archives
- Today
- Total
Value Creator의 IT(프로그래밍 / 전자제품)
#6 [C++] 예제 : RAM 구현해보기 본문
반응형
RAM.h
#ifndef RAM_H
#define RAM_H
#include<iostream>
using namespace std;
class Ram
{
char mem[100 * 1024];// 100kb 메모리. 한 번지는 한바이트이므로 char 타입사용.
int size;
public :
Ram();
~Ram();
char read(int adress);
void write(int adress, char value);
};
#endif
헤더 파일은 위와 같이 주어진다.
기본생성자에서는 mem의 사이즈를 size로 변경해주고(동적할당)
소멸자에서는 소멸자가 작동하는지 유무 체크를 위한 문자를 넣으면 된다.
ex) "메모리 제거됨"
read에서는 말그대로 해당 주소를 읽어오는 것이며
write는 해당 주소의 mem에 값을 입력하는것이다.
Main문과 결과는 아래와 같다.
main.cpp
#include"Ram.h"
int main()
{
Ram ram;
ram.write(100, 20);
ram.write(101, 30);
char res = ram.read(100) + ram.read(101);
ram.write(102, res);
cout << "102 번지의 값 = " << (int)ram.read(102) << endl;
}
Ram.cpp
#include "Ram.h"
Ram::Ram()
{
size = 100 * 1024;
char *mem = new char[size];
}
Ram::~Ram()
{
cout << "메모리 제거됨" << endl;
}
char Ram::read(int adress)
{
return mem[adress];
}
void Ram::write(int adress, char value)
{
mem[adress] = value;
}
기본생성자에서 동적할당의 예제는 "char *변수이름 = new char[배열의 크기]"이다.
write에서는 해당 mem의 주소에 value를 넣는다.
반응형
'1. 프로그래밍 > 5) C++' 카테고리의 다른 글
| argc, argv의 뜻은? (0) | 2019.10.28 |
|---|---|
| #7 [C++] 동적 메모리 할당 및 반환 (0) | 2019.08.02 |
| #5 [C++] 예제 : 랜덤 정수 10개 생성 클래스 만들기 (0) | 2019.07.26 |
| #4 [C++] 구조체, 객체 포인터, 객체 배열 (0) | 2019.07.26 |
| #3 [C++] 생성자, 소멸자, 접근지정자 (0) | 2019.07.26 |
Comments