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
- while
- topic
- install opencv-4.4.0 on ubuntu 22.04
- 환경설정
- C언어
- C++
- 리눅스
- 오늘도 우라라 펫 공략
- 등차수열
- 마리아 DB
- 데이터 베이스
- JungOl
- mariaDB
- 기초
- 우분투
- 프로그래밍
- LeetCode
- ros
- 반복문
- 오늘도 우라라 공략
- 오늘도 우라라
- MSG
- mysql
- Subscribe
- publish
- 그랑사가
- Linux
- ubuntu
- 오늘도 우라라 펫
- 토픽
Archives
- Today
- Total
하루의 쉼터
[UtilitiesLibrary] std::size_t - with unsigned int 본문
반응형
- 모든 유형의 객체의 최대 크기를 저장 할 수 있는 타입.
- sizeof의 반환 형태.
- 크기를 표현 할 수 없는 것은 저장 할 수 없음.
- 부호 없는 정수형
unsigned int와 공통점은 부호 없는 정수형이며 다른점은 아래와 같다.
std::size_t
- 크기를 나타내는 타입(구현 형태에 따라 달라짐)
- 메모리 범위의 크기를 바이트 단위로 표현할 수 있는 부호 없는 정수
- 시스템에 최대 크기의 메모리 블록
unsigned int
- 4바이트 크기(32 비트 아키텍처 기준)
- 효율적 수행
헤더 파일
* std::size_t를 사용하기 위해서는 밑에 헤더 중 하나를 사용하면 됨.
#include<cstddef>
#include<cstdio>
#include<cstdlib>
#include<cstinrg>
#include<ctime>
#include<cwchar>
#include<cuchar> // C++17 support
Test Code
#include <cstring>
#include <iostream>
#include <array>
class A {
private :
int num_;
std::string name_;
double val_;
};
template<class T>
class B {
private :
T t1;
T t2;
};
class D : public A, public B<int>{
private :
A a;
B b;
};
class C : public B<int> {
private :
B b;
};
int main(){
std::array<std::size_t, 10 > a;
for (auto i = 0; i != a.size(); ++i) {
std::cout << (a[i] = i) << ' ';
}
std::cout << '\n';
for (std::size_t i = a.size(); i--; ) {
std::cout << a[i] << ' ';
}
std::cout << '\n';
std::size_t b = sizeof(a);
std::cout << "array : " << b << '\n';
std::size_t str = sizeof(std::string);
std::cout << "string : " << str << '\n';
std::size_t c_a = sizeof(A);
std::cout << "class_A : " << c_a << '\n';
std::size_t c_b = sizeof(B<int>);
std::cout << "class_B : " << c_b << '\n';
std::size_t c_c = sizeof(C);
std::cout << "class_C : " << c_c << '\n';
std::size_t c_d= sizeof(D);
std::cout << "class_D : " << c_d << '\n';
return 0;
}
Reference Site :
https://en.cppreference.com/w/
반응형
'프로그래밍 > C++' 카테고리의 다른 글
[C++11] std::unique_ptr에 대해서 (0) | 2023.05.02 |
---|---|
[C++11] std::is_same (0) | 2023.04.27 |
[BasicGrammar] Inline Function (0) | 2023.04.18 |
[BasicGrammar] FunctionPointer(함수포인터) - with. c++ (0) | 2023.04.16 |
[Error] error: no matching function for call to ‘std::basic_ifstream<char>::open(std::__cxx11::string&)’ (0) | 2022.01.19 |
Comments