Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Power Basic

Страница: 1 |

 

  Вопрос: Свой тип функции Добавлено: 18.08.07 13:17  

Автор вопроса:  Denn | Web-сайт: www.nevskiifront.ucoz.ru
Есть функия которая перемножает две матрицы и должна возвращать результа в третей ну вот примерно так:
TYPE matrixT
      xx AS SINGLE
      xy AS SINGLE
      xz AS SINGLE
      xw AS SINGLE
      yx AS SINGLE
      yy AS SINGLE
      yz AS SINGLE
      yw AS SINGLE
      zx AS SINGLE
      zy AS SINGLE
      zz AS SINGLE
      zw AS SINGLE
      wx AS SINGLE
      wy AS SINGLE
      wz AS SINGLE
      ww AS SINGLE
 END TYPE
FUNCTION UmnRavnoM(m1  AS matrixT , m2  AS matrixT) AS matrixT
DIM m3  as matrixT                                                    .....
.....
function = m3
end function

компилер пишет ошибка синтекса 477
Неужели свой тип возвращат нельзя=(?

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #1 Добавлено: 18.08.07 15:46
А ты это в форму или в модуль записал?
Попробуй перед определением TYPE matrixT поставить ключевое слово Private

Ответить

Номер ответа: 2
Автор ответа:
 Denn



Вопросов: 2
Ответов: 2
 Web-сайт: www.nevskiifront.ucoz.ru
 Профиль | | #2
Добавлено: 18.08.07 16:34
dNW ты наверно просто случайно форум перепутал. Это не VB =)

Ответить

Номер ответа: 3
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #3 Добавлено: 18.08.07 22:10
Уппс :) Простите! Просто я зашел на главную страницу и увидел твою тему в списке последних :) Погорячился :D

Ответить

Номер ответа: 4
Автор ответа:
 alex



Вопросов: 84
Ответов: 453
 Профиль | | #4 Добавлено: 20.08.07 09:47
компилер пишет ошибка синтекса 477
Неужели свой тип возвращат нельзя=(?


Свой тип вернуть нельзя, но можно передать указатель на него.

Ответить

Номер ответа: 5
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #5 Добавлено: 31.08.07 02:29
Кстати,
В ПБ есть оператор MAT
который может перемножать матрицы

Ответить

Номер ответа: 6
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #6 Добавлено: 13.10.07 01:48
BTW, you are wrong,
вы можете возвращать свой тип из функции:

#COMPILE EXE
#DIM ALL

TYPE MyType
    sz AS ASCIIZ * 128 ' size 128 bytes
    dw AS DWORD        ' size 4 bytes
    lng AS LONG        ' size 4 bytes
END TYPE

UNION MyUDT
  s AS STRING *136     ' total size of UDT MyType =136
  MyType
END UNION

FUNCTION test() AS STRING
  LOCAL uSub AS MyUDT
    uSub.sz = "Hello !"
    uSub.dw = &H01020304???
    uSub.lng = 555&
    FUNCTION = uSub.s
END FUNCTION

FUNCTION PBMAIN () AS LONG
    LOCAL uPBmain AS MyUDT
    
    uPBmain.s = test()
    
    ? "uPBmain.sz = "+ uPBmain.sz +$CRLF+_
      "uPBmain.dw = "+HEX$(uPBmain.dw,8)+$CRLF+_
      "uPBmain.lng = "+STR$(uPBmain.lng)
END FUNCTION    

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам