찻주전자의 질문 - 페이지 124

 
MetaDriver :

알았어, 내렸어. :) 나도 터미널 밖이야.

그것은 기본적으로 검사됩니다 - ArrayResize(...)를 사용 하려는 시도

"사용 시도"라는 문구로 판단하면 배열이 정적인 것과 같은 오류가 발생할 가능성이 큽니다. 자, 확인해 봅시다.
 
MetaDriver :

그것은 기본적으로 검사됩니다 - ArrayResize(...)를 사용 하려는 시도

여전히 다소 구불구불) 더 쉽게
 

자, 여기에 실수가 있습니다. 메타쿼타 시민 여러분, 주목해주세요!!!

   int j[ 1 ];
   Alert ( "Размер массива из одного элемента без списка инициализации = " , sizeof (j), "   Массив динамический? " , ArrayIsDynamic (j));

   int k[];
   Alert ( "Размер структуры для динамического массива = " , sizeof (k), "   Массив динамический? " , ArrayIsDynamic (k));
   
   int g[] = { 0 };
   Alert ( "Размер массива из одного элемента со списком инициализации = " , sizeof (g), "   Массив динамический? " , ArrayIsDynamic (g));
오류의 본질: 초기화 목록이 배열( int g[] = { 0 }; )에 사용될 때 sizeof (g) 함수는 구조체 MqlArrayObject 구조(동적 배열에 대해 생성됨) 의 크기를 반환합니다.
Документация по MQL5: Основы языка / Операции и выражения / Другие операции
Документация по MQL5: Основы языка / Операции и выражения / Другие операции
  • www.mql5.com
Основы языка / Операции и выражения / Другие операции - Документация по MQL5
 
220Volt :
오류의 본질: 초기화 목록이 배열( int g[] = { 0 }; )에 사용될 때 sizeof (g) 함수는 구조체 MqlArrayObject 구조(동적 배열에 대해 생성됨) 의 크기를 반환합니다.
그리고 ArrayIsDinamic()이 배열이 정적이라고 말하는 동안? // 네트 및 코트 네트에서
 
MetaDriver :
그리고 ArrayIsDinamic()이 배열이 정적이라고 말하는 동안? // 네트 및 코트 네트에서

j - 정적

k - 동적

g - 정적

 
220Volt :
....

g - 정적

공포. Sportloto에 씁니다. 지원하겠습니다.
 
220Volt :

자, 여기에 실수가 있습니다. 메타쿼타 시민 여러분, 주목해주세요!!!

오류의 본질: 초기화 목록이 배열( int g[] = { 0 }; )에 사용될 때 sizeof (g) 함수는 구조체 MqlArrayObject 구조(동적 배열에 대해 생성됨) 의 크기를 반환합니다.

게시해 주셔서 감사합니다. 버그가 수정되었습니다.
 
mql5 :
게시해 주셔서 감사합니다. 버그가 수정되었습니다.

일리아스!! 기다리다!!

정확히 어떻게 고정되나요? 선언 시 초기화된 배열 이 동적(크기 조정 가능)이 되었습니까?

아니면 완전히 정적입니까?

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Основы языка / Переменные - Документация по MQL5
 
MetaDriver :

아니면 완전히 정적입니까?
확실히 정적입니다.
 
Renat :
확실히 정적입니다.

오, 이제 명확해졌습니다.

Renat, 내 제안은 주제에 대해서만 오랫동안 숙성되었습니다. 배열에 대해 명명된 유형을 지정하십시오. 최소한 정적 유형(다른 모든 유형의 경우 이미 존재함).

예를 들어 다음을 선언하는 기능: typedef Int8 = int[8]; .

문제의 대가는 1차원(2.3차원) 배열을 더 큰 차원의 배열에 있는 하위 배열인 함수에 전달하는 기능입니다.

저것들. 추가로 선언하면 Int8 arr[..] , arr[i]func(Int8 &a) {...} 함수에 전달할 수 있습니다.

이제 mql5에서는 함수에 하위 배열을 전달할 수 없기 때문에 불필요한 움직임을 많이 만들고 비뚤어진 코드를 작성해야 합니다.

나는 그 주제가 나에게 논쟁의 여지가 있는 것처럼 보이기 때문에 서비스 데스크에 편지를 쓰지 않습니다.

Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.