Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Создать в 1с 8.0 одномерный массив double (число прочтений - 2454 )
Gendalf
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 3
Зарегистрирован: 21. Января 2008
Создать в 1с 8.0 одномерный массив double
21. Января 2008 :: 02:54
Печать  
Встраиваю в 1с АктивИкс GWControl от Ингита, его метод (getMeasure()) хочет в параметр массив вещественных.
1эсовский массив не признает. Выдает ошибку "Невозможно вызвать метод..." код 80070057,  понятно тип параметра не совпадает. Может кто подскажет как сформировать массив при помощи 1с++? Код такой:
Для VB (работает)
'вычисление длины пути
dim arr(5) as double
arr(0) = 30.0
arr(1) = 50.0
arr(2) = 30.1
arr(3) = 50.1
arr(4) = 30.2
arr(5) = 50.2
Debug.Print GWControl.getMeasure (arr)

Для 1с (не работает)
Массив = Новый Массив(6);
Массив.УстановитьЗначение(0,30.0);
Массив.УстановитьЗначение(1,30.0);
Массив.УстановитьЗначение(2,30.0);
...
ДлинаПути = GWControl.getMeasure (Массив);
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Создать в 1с 8.0 одномерный массив double
Ответ #1 - 21. Января 2008 :: 06:26
Печать  
1с++ в восьмёрке не работает.
  
Наверх
 
IP записан
 
Gendalf
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 3
Зарегистрирован: 21. Января 2008
Re: Создать в 1с 8.0 одномерный массив double
Ответ #2 - 21. Января 2008 :: 07:02
Печать  
Засада
  
Наверх
 
IP записан
 
Igor-bts
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 103
Зарегистрирован: 14. Июля 2006
Re: Создать в 1с 8.0 одномерный массив double
Ответ #3 - 21. Января 2008 :: 08:44
Печать  
Может глянуть в сторону
COMSafeArray
  
Наверх
ICQ  
IP записан
 
Gendalf
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 3
Зарегистрирован: 21. Января 2008
Re: Создать в 1с 8.0 одномерный массив double
Ответ #4 - 21. Января 2008 :: 10:25
Печать  
Igor-bts писал(а) 21. Января 2008 :: 08:44:
Может глянуть в сторону
COMSafeArray

Дружище! Огромное спасибо и мой респект. (как я сам не допёр?) для интересующихся код:
  МассивСом = Новый COMSafeArray("VT_R8"6) ;
       МассивСом.SetValue(0, 48.44513169);
       МассивСом.SetValue(1, 135.08556557);
       МассивСом.SetValue(2, 48.37449814);
       МассивСом.SetValue(3, 135.03459304);
       МассивСом.SetValue(4, 135.17355175);
       МассивСом.SetValue(5, 48.36504444);

       ДлинаПути= Карта.GetMeasure(МассивСом);
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать