C++ STL의 unordered_multimap reserved() 함수는 컨테이너의 버킷 수를 가장 적절한 수로 설정하여 n개 이상의 요소를 포함하도록 합니다. n이 현재 버킷 수에 max_load_factor를 곱한 값보다 크면 컨테이너의 버킷 수가 증가하고 강제로 rehash됩니다. Reserve()는 아무 것도 반환하지 않고 n을 요청된 최소 용량에 따라 최소 요소 수를 지정하는 매개변수로 사용합니다. 알고리즘 Begin Declare the vector m. m.reser
C++ STL의 unordered_multimap size() 함수는 정렬되지 않은 맵의 요소 수를 반환합니다. 알고리즘 Begin Declare an empty map container m. Performing reserve function to restrict the most appropriate bucket_count of the map container. Insert values in the map container. &
C++ STL의 unordered_multimap swap() 함수는 한 멀티맵의 요소를 동일한 크기와 유형의 다른 멀티맵으로 교체하는 데 사용됩니다. 알고리즘 Begin Declaring two empty map container m, m1. Insert some values in both m, m1 map containers. Perform swap() function to swap the values of m, m1 map containers.
C++ STL의 vector insert() 함수는 지정된 위치의 요소 앞에 새 요소를 삽입하여 컨테이너의 크기를 늘리는 데 도움이 됩니다. C++ STL에서 미리 정의된 함수입니다. 세 가지 유형의 구문으로 값을 삽입할 수 있습니다. 1. 위치와 값만 언급하여 값 삽입: vector_name.insert(pos,value); 2. 위치, 값 및 크기를 언급하여 값 삽입: vector_name.insert(pos,size,value); 3. 값을 삽입할 위치와 채워진 벡터의 반복자를 언급하여 다른 빈 벡터에 값을 삽입하면
vector::begin() 함수는 컨테이너의 첫 번째 요소를 가리키는 반복자를 반환하는 데 사용되는 양방향 반복자입니다. vector::end() 함수는 컨테이너의 마지막 요소를 가리키는 반복자를 반환하는 데 사용되는 양방향 반복자입니다. 알고리즘 Begin Initialize the vector v. Declare the vector v1 and iterator it to the vector. Insert the elements of the vector. &
배열 및 의사 코드에 대한 다른 작업: Begin In main(), While TRUE do Prints some choices. Take input of choice. Start the switch case When case is 1 Print the size
이진 트리를 순서대로 순회하면 왼쪽 하위 트리를 먼저 방문한 다음 루트를 방문한 다음 오른쪽 하위 트리를 방문합니다. in_order 순회에서 키를 오름차순으로 출력합니다. 재귀 없는 Inorder Tree Traversal을 위한 C++ 프로그램입니다. 알고리즘 Begin Function inOrder(): Declare a stack s. Declare the current node as root. &nbs
elf 형식의 .so 파일을 읽으려면 readelf를 사용하세요. readelf -Ws libName.so 바이너리에서 기호를 추출하는 데 도움이 됩니다. 모든 기호를 나열하는 데 사용되는 표준 도구는 nm입니다. nm -g libName.so
이것은 C++에서 전체 파일을 std::string으로 읽는 간단한 방법입니다. 알고리즘 Begin Take the filename as inputstream. Declare a string variable str. Read the file till the end by using rdbuf(). Put the data into st. Print the data. End. 예시 코드 #include<iostream
C++에서 바이너리 파일을 작성하려면 write 메소드를 사용하십시오. put 포인터의 위치에서 시작하여 주어진 스트림에 주어진 바이트 수를 쓰는 데 사용됩니다. 넣기 포인터가 파일 끝에 있는 경우 파일이 확장됩니다. 이 포인터가 파일의 중간을 가리키면 파일의 문자를 새 데이터로 덮어씁니다. 파일에 쓰는 동안 오류가 발생하면 스트림은 오류 상태가 됩니다. 쓰기 방식의 구문 ostream& write(const char*, int); 알고리즘 Begin Create a structure Student
해시 테이블은 키-값 쌍을 저장하는 데 사용되는 데이터 구조입니다. 해시 함수는 해시 테이블에서 요소를 삽입하거나 검색할 배열의 인덱스를 계산하는 데 사용됩니다. 해시 테이블을 구현하는 C++ 프로그램입니다. 알고리즘 Begin Initialize the table size T_S to some integer value. Create a structure hashTableEntry to declare key k and value v. Create a class
해시 테이블은 키-값 쌍을 저장하는 데 사용되는 데이터 구조입니다. 해시 함수는 해시 테이블에서 요소를 삽입하거나 검색할 배열의 인덱스를 계산하는 데 사용됩니다. 이중 연결 목록으로 해시 테이블을 구현하는 C++ 프로그램입니다. 알고리즘 삽입용: n =en top[hash_v] =enEnd 삭제: nEnd 키 값 검색: n if (!flag) 키에서 요소를 찾을 수 없음을 인쇄합니다. 종료 예시 코드 #include const int T_S =200; 네임스페이스 사용 std;struct HashTableEntry {
스코프는 프로그램의 한 영역이며 넓게 말해서 변수를 선언할 수 있는 세 곳이 있습니다 - 지역 변수라고 하는 함수 또는 블록 내부 형식 매개변수라고 하는 함수 매개변수의 정의에서. 전역 변수라고 하는 모든 함수 외부. 다음 장에서 함수와 매개변수가 무엇인지 배울 것입니다. 여기에서 지역 및 전역 변수가 무엇인지 설명하겠습니다. 로컬 변수 함수나 블록 내에서 선언된 변수는 지역 변수입니다. 해당 함수 또는 코드 블록 내부에 있는 명령문에서만 사용할 수 있습니다. 지역 변수는 자체 외부에서 기능하는 것으로 알려져
이 섹션에서는 C++ 클래스에서 변환 생성자가 무엇인지 볼 것입니다. 생성자는 클래스의 특별한 유형의 함수입니다. 그것은 고유한 속성을 가지고 있습니다. 그 이름은 클래스 이름과 같을 것이고, 어떤 값도 반환하지 않을 것입니다. 생성자는 클래스의 객체를 생성하는 데 사용됩니다. 때로는 생성자가 일부 인수를 취하거나 때로는 인수를 취하지 않을 수 있습니다. 생성자가 하나의 인수만 취하면 이 유형의 생성자가 변환 생성자가 됩니다. 이 유형의 생성자를 사용하면 생성 중인 클래스로 자동 변환할 수 있습니다. 예시 #include<i
이 섹션에서는 C++의 와이드 문자가 무엇인지 살펴보겠습니다. 또한 와이드 문자를 처리하는 데 사용되는 몇 가지 기능을 볼 것입니다. 와이드 문자는 문자 데이터 유형과 유사합니다. 가장 큰 차이점은 char는 1바이트 공간을 차지하지만 와이드 문자는 메모리 공간에서 2바이트(컴파일러에 따라 4바이트)를 차지한다는 것입니다. 2바이트 공간 와이드 문자의 경우 64K(65536)개의 다른 문자를 저장할 수 있습니다. 따라서 넓은 문자는 UNICODE 문자를 포함할 수 있습니다. UNICODE 값은 모든 언어의 모든 문자에 대해 가상으
GCC 컴파일러에는 몇 가지 내장 함수가 있습니다. 이러한 기능은 아래와 같습니다. 함수 _builtin_popcount(x) 이 내장 함수는 정수형 데이터에서 1의 개수를 세는 데 사용됩니다. _builtin_popcount() 함수의 예를 살펴보겠습니다. 예시 #include<iostream> using namespace std; int main() { int n = 13; //The binary is 1101 cout << "Count of 1s i
이 섹션에서는 C++에서 복소수를 만들고 사용하는 방법을 살펴봅니다. C++에서 복소수 클래스를 만들 수 있습니다. 이 클래스는 복소수의 실수 부분과 허수 부분을 멤버 요소로 보유할 수 있습니다. 이 클래스를 처리하는 데 사용되는 몇 가지 멤버 함수가 있습니다. 이 예제에서는 복소수를 올바른 형식으로 표시하는 함수인 하나의 복합 유형 클래스를 만들고 있습니다. 두 개의 복소수 등을 더하고 빼는 두 가지 추가 방법 예시 #include<iostream> using namespace std; class complex { &
이 섹션에서는 C++에서 문자열 배열을 정의하는 방법을 볼 것입니다. C에는 문자열이 없었습니다. 문자 배열을 사용하여 문자열을 생성해야 합니다. 따라서 문자열 배열을 만들려면 2차원 문자 배열을 만들어야 합니다. 각 행은 해당 행렬에서 서로 다른 문자열을 보유하고 있습니다. C++에는 string이라는 클래스가 있습니다. 이 클래스 개체를 사용하여 stringtype 데이터를 저장하고 매우 효율적으로 사용할 수 있습니다. 객체 배열을 생성할 수 있으므로 문자열 배열을 쉽게 생성할 수 있습니다. 그런 다음 string형 벡터 객
스택과 힙은 프로그램 실행 중에 변수를 저장하는 데 사용되며 소멸되기도 합니다. 전역 데이터 구조 또는 전역 변수는 스택이나 힙에서 사용되지 않습니다. 기본적으로 고정 메모리 블록에 할당되며 변경되지 않습니다. int a[10]; // located in a fixed memory block int main() { int main() { float *ptr = (int *)malloc(sizeof(float)10.0)); //use heap. }
이 기사에서는 C++에서 변환 연산자가 무엇인지 살펴보겠습니다. C++는 객체 지향 설계를 지원합니다. 따라서 일부 실제 개체의 클래스를 구체적인 유형으로 만들 수 있습니다. 때때로 우리는 일부 구체적인 유형 객체를 다른 유형 객체 또는 일부 기본 데이터 유형으로 변환해야 합니다. 이 변환을 수행하려면 변환 연산자를 사용할 수 있습니다. 이것은 클래스의 연산자 오버로딩 함수처럼 생성됩니다. 이 예에서 우리는 복소수에 대한 수업을 듣고 있습니다. 여기에는 실제와 가상의 두 가지 인수가 있습니다. 이 클래스의 개체를 일부 이중 유형