在vc中声明如下:
typedef struct {
float left;
  float top;
float right;
float bottom;
}RECT;
 bool GetString( RECT rect )
我在vb中如此定义和使用:
Public Type RECT
    left As Single
    top As Single
    right As Single
    bottom As Single
End Type
Public Function GetString( ByVal rect As RECT )As Boolean//声明Dim bl As Boolean
bl = GetString ( rect )//调用
可vb报错说: 用户定义类型不能使用!!这是什么原因啊?

解决方案 »

  1.   

    Public Type RECT  整个放在 Module 里面
      
    --------------------------------------------------------------
    程序,犹如人生。
      

  2.   

    应该是跟VB自带的库发生了名称冲突 你把自己的RECT改个名字试试,比如:Public Type MyRect
    ....
    End Type
      

  3.   

    还有VB是大小写不敏感的语言,所以形参的名称最好不要和类型名称相同,Public Function GetString( ByVal r As MyRect )As Boolean//声明