代码之家  ›  专栏  ›  技术社区  ›  Arlen Beiler

C中的类和模块是用于什么的#

  •  18
  • Arlen Beiler  · 技术社区  · 16 年前

    更新:我的意思是C#相当于VB模块。

    6 回复  |  直到 16 年前
        1
  •  11
  •   Federico Navarrete    8 年前

    (也许我应该说清楚,C语言中没有“模块”,就像VB.NET的“模块”一样)

    在VB#或C#中没有类似的模块。因此,模块是编译并打包成程序集的模块,它更符合逻辑。

    而类是一个定义良好的实体。模块可以使用一个或多个类来运行(同样,逻辑上使用“模块”一词)

    “Module”一词也用于完全不同的上下文,在System.Reflection.Module中

        2
  •  20
  •   JaredPar    16 年前

    visualbasic模块

    对于VB.Net模块,在C#中没有真正的等价物。在某些方面,它类似于静态类,因为您无法创建它的实例,并且其中的所有成员都是静态的。在C#中,这需要一个显式的静态关键字,而在VB.Net中它是隐式的。

    但最大的区别在于名称查找。在VB.Net中,如果模块在范围内,则可以无条件地调用其任何方法。对于C#静态类,情况并非如此。

    除了名称查找之外,类和模块之间的主要区别在于,类通常仅对该类型的实例有用。

    系统反射模块

    此上下文中的模块是可移植的可执行文件(dll或exe)。如果是多文件程序集,则给定的DLL/EXE可以由多个模块组成。它与单个类没有真正的关系。

        3
  •  8
  •   Nick Craver    16 年前

    此外,模块(无论是一个还是多个)是.Net中程序集的组成部分

    请记住,一旦它在.Net中编译,不管它是用什么语言编写的,它都是IL,所以您描述的术语在这一点上几乎是语言不可知的。

        4
  •  6
  •   Aaronaught    16 年前

    A. 是数据和函数(字段、属性和方法)的独立单元。

    模块

    编译后的DLL或EXE称为

    至于何时使用它们:您一直在使用类、接口和结构,这些是基础。模块是你通常无法控制的东西;同样,一般公认的做法是每个文件有一种类型,每个模块编译成一种类型。

    当您希望跨多个项目重用某些类型(包含在某些模块中)时,通常会使用单独的程序集。您还可以使用它在应用程序的不同组件之间创建硬边界,即将数据库逻辑放在一个程序集中,将业务逻辑放在另一个程序集中。

        5
  •  3
  •   John Saunders    16 年前

        6
  •  3
  •   Community Mohan Dere    6 年前

    从…起 Microsoft docs ,

    模块是可移植的可执行文件,如type.dll或application.exe,由一个或多个类和接口组成。单个模块中可能包含多个名称空间,并且一个名称空间可能跨越多个模块。

    作为一个单元部署的一个或多个模块组成一个程序集。有关创建具有多个模块的部件的信息,请参见 Multifile Assemblies .

    请注意,.NET Framework模块与Visual Basic中的模块不同,程序员使用它来组织应用程序中的函数和子例程。

        7
  •  2
  •   Kb.    16 年前

    不等于 在Visual Basic中,程序员用来组织应用程序中的函数和子例程(参见 module class in C# )
    在c中#