동일한 작업을 수행하는 두 가지 테스트를 실행했습니다. N 임의의 숫자를 추가합니다. Test_1은 스택에서 int를 사용하고 Test_2는 힙에 int를 사용합니다. 놀랍게도, 내 컴퓨터에서 Test_1은 약 945ms에서 실행되고 Test_2는 약 915ms에서 실행됩니다 (타이밍은 다를 수 있지만 그 차이는 매우 일관되고 눈에 띄는 정도입니다). 이처
물론 컴파일러에는 유효하지만 다음은 수행하지 말아야합니다. 하지만 할 때 무슨 일이 일어나고있는거야? CClass clss = *new CClass();
위에서 반대로 다음은 컴파일하지만 어설 션 오류가 발생합니다. delete &clss;
스택 또는 힙 중 하나에 메모리를 할당하는 것과 관련이 있습니까? 당신이 그것을 무너 뜨리는 경우
높이 6의 힙에있는 노드 중 가장 작은 (최대) 노드 수는 얼마입니까? 노드가 200 개인 힙의 높이는 얼마입니까? 사람들이이 질문에 대한 해결책을 어떻게 찾을 수 있습니까? 대답이 있다면 단계별로 설명 할 수 있습니까? (이 질문에 공식이 쓰여 있다면 pl) 감사합니다.
스택과 다른 힙 중 하나에 두 개의 메모리 영역이 있다는 것을 읽었습니다. int, double, float 등의 기본 데이터 유형은 스택에 저장되며 참조 유형은 힙에 저장됩니다. 스택이 LIFO이라는 것은 마지막으로 푸시 된 요소가 먼저 제거된다는 것을 의미합니다. 지금 int first = 10;
double second = 20.0;
float t
저는 Nicolai M. Josuttis의 "C++ 표준 라이브러리, 자습서 및 참조"인 ed2를 읽었습니다. 그는 607 페이지에 힙 데이터 구조 및 관련 STL의 기능에 대해 설명 : 이 프로그램은 다음과 같은 출력이 있습니다 on entry: 3 4 5 6 7 5 6 7 8 9 1 2 3 4
after make_heap(): 9 8 6 7 7 5 5
내가 무슨 일이 일어나고 있는지 잘 모릅니다 - 힙을 어떻게 든 내 코드가 손상되어 ....
unsigned char *buf[2] = {0};
buf[0] = new unsigned char(sizeof(BITMAPFILEHEADER));
buf[1] = new unsigned char(sizeof(BITMAPINFOHEADER));
if(! b
나는 무선 Network Toplogy라는 프로젝트를하고있다. 그래프를 데이터 구조로 사용합니다. 포인터를 만들었지 만 힙 누수 문제에 직면하고 있습니다. 누구든지이 오류를 해결할 수 있습니까? 삭제 연산자를 호출 할 곳은 어디입니까? CPP에 코드가 첨부 : 연산자를 삭제 호출 할 때 식별 #include <string>
#include <ctime>
나는 다음과 같은 유형의 Q Qt5/C++ 프로그램을 쓰고 있어요의 QList에서 구조체를 만들어 제거하는 : struct SSensorScore {
Types::EScoreComparisons comparisonType;
ESensorValueTypes comparisonValueType;
QVariant comparisonVa