Advertisement

VB 常出现“类型不匹配,缺少数组或用户定义类型”的警告

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
本教程针对在使用Visual Basic编程时遇到的“类型不匹配”及“缺少数组或用户定义类型”等常见警告进行详细解析与解决方法介绍。 在VB中定义了类模块Class1中的代码如下: ```vb Dim aa() As String Public Sub setName(ByRef str() As String) aa = str End Sub Public Function getName() As String() getName = aa End Function ``` 然后,在Module1模块中有以下代码: ```vb Public MyName As New Class1 ``` 在按钮Command1的点击事件中,有如下代码: ```vb Private Sub Command1_Click() Dim cc() As String MyName.setName (cc()) End Sub ``` 运行时总是提示“类型不匹配,缺少数组或用户定义类型”。不知道问题出在哪里?

全部评论 (0)

还没有任何评论哟~
客服
客服
  • VB
    优质
    本教程针对在使用Visual Basic编程时遇到的“类型不匹配”及“缺少数组或用户定义类型”等常见警告进行详细解析与解决方法介绍。 在VB中定义了类模块Class1中的代码如下: ```vb Dim aa() As String Public Sub setName(ByRef str() As String) aa = str End Sub Public Function getName() As String() getName = aa End Function ``` 然后,在Module1模块中有以下代码: ```vb Public MyName As New Class1 ``` 在按钮Command1的点击事件中,有如下代码: ```vb Private Sub Command1_Click() Dim cc() As String MyName.setName (cc()) End Sub ``` 运行时总是提示“类型不匹配,缺少数组或用户定义类型”。不知道问题出在哪里?
  • Keil 中
    优质
    本文将介绍在使用 Keil 集成开发环境进行软件开发时常见的几种警告类型及其解决方法,帮助开发者提升代码质量。 Keil是一款广泛使用的集成开发环境(IDE),特别针对基于ARM和8051微控制器的嵌入式系统软件开发。它提供了编译器、调试器、模拟器以及硬件仿真等功能。尽管Keil功能强大,但在使用过程中可能会遇到各种警告和错误。这些警告和错误虽然不会阻止程序的编译,但可能在运行时导致不可预料的问题。因此,了解这些问题的原因及解决方法对于软件开发者来说至关重要。 以下是Keil中常见的几种警告及其相关知识点: 1. Warning 280: i: unreferenced local variable 这个警告表示变量i在函数声明后未使用。如果局部变量被声明但没有进行任何读写操作,则会导致编译器发出此警告。解决这个问题通常有两种方法:要么使用该变量以消除警告,要么从代码中删除未使用的变量声明。 2. Warning 206: Music3: missing function-prototype 这个警告意味着函数Music3()没有被正确地声明或外部声明,导致其他函数无法调用它。对于同一文件中的函数,可以在文件顶部声明其原型;而对于跨文件的函数,则应使用extern关键字来声明该函数。 3. Error: Can’t open file ‘beep.h’ 这个错误发生在编译过程中,因为找不到#include指令指定的头文件beep.h。解决方法是创建一个名为beep.h的文件并将其放置在正确的工作目录中。 4. Error 237: LedOn: function already has a body 此错误表明有两个或更多相同名称的函数定义,通常称为重复定义问题。为了解决这个问题,需要确保所有函数都有唯一的名称且没有重名的情况出现。 5. ***WARNING 16: UNCALLED SEGMENT 这个警告说明了存在未被调用的代码段占用了程序内存空间。可以通过移除这些未使用的函数或使用条件编译来控制其编译过程,从而节省存储空间。 6. ***WARNING 6: XDATA MEMORY OVERLAP 此警告表示外部数据内存中地址冲突。解决方法是检查并确保没有变量被错误地定义在同一地址上。 7. Warning 206: ‘DelayX1ms’: missing function-prototype 和 Error 267: ‘DelayX1ms’: requires ANSI-style prototype 这两个提示都指向同一个问题,即函数DelayX1ms()未正确声明或定义。解决方法是确保该函数在使用前已被正确定义,并且当从其他文件中调用时有正确的外部声明。 8. ***WARNING 1 & 2: UNRESOLVED EXTERNAL SYMBOLS 这些警告通常指出程序中存在对未定义的或者不在工程中的函数或变量进行调用的问题。解决方法是将相应的函数声明添加到头文件,并确保它们在编译过程中包含进来。 9. ***ERROR 107: ADDRESS SPACE OVERFLOW 和 ***ERROR 118: REFERENCE MADE TO ERRONEOUS EXTERNAL 这些错误通常与特定存储模式设置相关,如SMALL模式。在这种情况下,局部变量可能会消耗掉data空间导致溢出问题。可以通过将部分数据移到idata空间来避免这种情况。 10. ***WARNING L1 & L2: UNRESOLVED EXTERNAL SYMBOL 这类警告通常是由于项目配置不当或代码未被正确编译所引起的,例如没有添加C文件到项目中或者存在未调用的已定义函数。解决方法是仔细检查项目的设置并确保所有必要的文件都被包含进来。 以上就是对Keil常见问题和解决方案的一些介绍。理解这些问题可以帮助开发者更有效地使用该工具,并编写出更加稳定高效的程序代码。
  • C4430 错误:说明符
    优质
    C4430错误指示在编程过程中未提供必要的类型声明。此错误常见于C++代码中,提醒开发者需明确指定变量或函数参数的数据类型,确保程序语法正确性与编译顺利进行。 error C4430 缺少类型说明符,请确保在声明变量或函数参数时提供了正确的数据类型。这个问题通常出现在C++代码中,当编译器无法确定某个表达式所需的正确数据类型时就会出现这个错误信息。检查相关的代码段,并添加必要的类型定义即可解决此问题。
  • 加法和输功能
    优质
    本项目旨在创建一个可定制的复数类,支持复数间的加法运算及结果的格式化输出,增强对复数操作的理解与应用。 定义一个示意性的复数类型类complex,其中包含若干成员函数以实现复数的加法运算以及输出功能。请完成该类的定义,并编写主函数来展示如何使用这个complex类的对象及调用其各个成员函数。
  • 报声音40
    优质
    这段内容包含40种不同的警报声,每一种都有其独特的音效设计和应用场景,旨在帮助用户迅速识别并响应各种紧急情况或提醒。 系统开发涉及各类警报声音和系统提示音的设计与实现,适用于软件开发者使用。
  • GORM自集合
    优质
    本篇文章介绍了如何在Go语言的GORM框架中实现和使用自定义的数据类型。涵盖了必要的配置步骤及应用实例,帮助开发者灵活处理特定需求的数据模型。 GORM数据类型JSON格式在sqlite、mysql、postgres中的使用方式如下: ```go import gorm.io/datatypes type UserWithJSON struct { gorm.Model Name string Attributes datatypes.JSON } DB.Create(&User{ Name: json-1, Attributes: datatypes.JSON([]byte(`{name: jinzhu, age: 18, tags: [tag1, tag2]`)), }) ```
  • 关于分锈钢板表面据库
    优质
    本数据库专注于收集并分析各类不锈钢板表面缺陷,为用户提供详细分类和高清图像样本,助力于质量控制与机器视觉研究。 该数据集来自通信科学研究中心Semeion的研究项目。研究的最初目标是准确分类不锈钢板表面的不同缺陷类型,其中包括六种可能的缺陷(加上“其他”类别)。 输入向量由27个指示符组成,这些指标大致描述了缺陷的几何形状及其轮廓特征。 根据相关文献记载,Semion是由Centro Sviluppi Materiali (意大利)委托进行的研究项目。但是由于限制条件,无法提供有关用于构建输入向量的27个具体指标和六种不同缺陷类型的详细信息。 数据集包含34个字段。其中前27个字段描述了从图像中获取到的某种钢板断层的信息: - X_Minimum - X_Maximum - Y_Minimum - Y_Maximum - Pixels_Areas - X_Perimeter - Y_Perimeter - SumofLuminosity(亮度总和) - MinimumofLuminosity(最小亮度值) - MaximumofLuminosity(最大亮度值) - LengthofConveyer(传送带长度) - TypeOfSteel_A300 (钢种A300) - TypeOfSteel_A400 (钢种A400) - SteelPlateThickness (钢板厚度) - Edges_Index - Empty_Index - Square_Index - OutsideXIndex
  • 统计int中各元素
    优质
    本段介绍了一种算法,用于计算给定整数数组中每个不同数值出现的频率。通过遍历数组并使用辅助数据结构记录频次,最终输出每个元素及其对应的计数结果。 定义一个方法接收一个 int 类型的数组作为参数,并输出该数组中的每个数字及其出现次数。例如,如果传入的数组是 [1, 2, 2, 2, 3, 3, 4, 4, 4, 4],则打印结果为: - 数字 1 出现了 1 次 - 数字 2 出现了 3 次 - …
  • 板PDF
    优质
    本资料涵盖多种类型标定板的设计与应用介绍,包括棋盘格、圆点及其他特殊图案标定板,适用于摄影测量和机器视觉等领域。提供详细的PDF文档下载。 在摄影测量和计算机视觉领域中,标定板是用于相机标定的重要工具。相机标定是一个关键过程,它可以估计出相机的内部参数(如焦距、主点、畸变系数等)以及相机与世界坐标系之间的外部参数。这些参数对于精确测量图像中的物体位置、尺度和姿态至关重要。 根据不同的应用场景和需求,存在多种类型的标定板,它们各自拥有独特的图案和排列方式以适应不同的标定算法。从给定的文件信息中可以看出,这里有五种不同类型的标定板: 1. **calib.io_charuco_200x150_8x11_9_6_DICT_4X4**:该类型结合了棋盘格与ArUco标记的优势,提供了更精确的角点检测能力。其尺寸为200×150毫米,包含8行和11列的棋盘格,圆圈排列为9x6,并使用字典大小为4x4的ArUco标记。 2. **calib.io_checker_200x150_8x11_12**:这是标准的Checkerboard标定板。尺寸同样为200×150毫米,包含8行和11列角点阵列,并且每格大小是根据单位长度来定义。 3. **calib.io_circles_200x150_8x11_9_5** 和 **calib.io_circlesA_200x150_8x11_9_5**:这两种标定板基于圆形图案设计,尺寸和圆圈排列相同。命名中的差异可能表示它们具有不同的图案或特征点排列方式。 4. **calib.io_kalibr_200x150_8x11_7**:这种类型的标定板同样拥有独特的图案设计,并且其具体细节决定了每格的大小。 这些标定板通常以PDF格式提供,这使得用户可以轻松地打印出高精度的标定板用于实际操作。正确的标定板对于确保相机系统的准确性至关重要,能够为复杂的视觉系统提供必要的校准信息。通过使用合适的标定板,研究人员和工程师能确保他们的相机系统具有精确测量现实世界物体的能力。 这些类型的标定板被广泛应用于工业检测、机器视觉、机器人导航、增强现实以及三维重建等领域中。它们的设计和选择直接影响到最终的测量结果,并且需要根据具体的项目需求来挑选最合适的类型。在实际操作过程中,确保标定板的平面性及打印尺寸精度是保证标定准确性的重要因素。 随着技术的进步,新型标定板不断被开发出来以满足更复杂的应用场景和技术需求。这些创新的设计能够适应不同分辨率的相机,并且提高复杂背景下的标定精确度。
  • Java泛法详解
    优质
    本教程详细讲解了Java中泛型类的概念、定义方法及其使用技巧,帮助开发者深入理解并有效利用泛型提升代码复用性和安全性。 本段落详细介绍了Java泛型类定义与使用的相关资料,具有一定的参考价值,感兴趣的读者可以查阅一下。