美文网首页
常用的特性

常用的特性

作者: 北风知我意 | 来源:发表于2017-02-22 16:42 被阅读11次

属性可以放置在几乎所有声明中(但特定的属性可能限制它在其上有效的声明类型)。在语法上,属性的指定方法为:将括在方括号中的属性名置于其适用的实体声明之前。例如,具有 DllImport 属性的类将声明如下:

[DllImport] public class MyDllimportClass { ... }

有关更多信息,请参见 DllImportAttribute 类。

许多属性都带参数,而这些参数可以是定位(未命名)参数也可以是命名参数。任何定位参数都必须按特定顺序指定并且不能省略,而命名参数是可选的且可以按任意顺序指定。首先指定定位参数。例如,这三个属性是等效的:

[DllImport("user32.dll", SetLastError=false, ExactSpelling=false)]

[DllImport("user32.dll", ExactSpelling=false, SetLastError=false)]

[DllImport("user32.dll")]

第一个参数(DLL 名称)是定位参数并且总是第一个出现,其他参数为命名参数。在此例中,两个命名参数都默认为假,因此它们可以省略(有关默认参数值的信息,请参见各个属性的文档)。

在一个声明中可以放置多个属性,可分开放置,也可放在同一组括号中:

bool AMethod([In][Out]ref double x);

bool AMethod([Out][In]ref double x);

bool AMethod([In,Out]ref double x);

某些属性对于给定实体可以指定多次。此类可多次使用的属性的一个示例是 Conditional:

[Conditional("DEBUG"), Conditional("TEST1")] void TraceMethod() {...}

注意   根据约定,所有属性名称都以单词“Attribute”结束,以便将它们与 .NET Framework 中的其他项区分。但是,在代码中使用属性时不需要指定属性后缀。例如,[DllImport] 虽等效于 [DllImportAttribute],但 DllImportAttribute 才是该属性在 .NET Framework 中的实际名称。

3.MarshalAsAttribute 类

指示如何在托管代码和非托管代码之间封送数据。可将该属性应用于参数、字段或返回值。

该属性为可选属性,因为每个数据类型都有默认的封送处理行为。

大多数情况下,该属性只是使用 UnmanagedType 枚举标识非托管数据的格式。

例如,默认情况下,公共语言运行库将字符串参数作为 BStr 封送到 COM 方法,但是可以通过制定MarshalAs属性,将字符串作为 LPStr、LPWStr、LPTStr 或 BStr 封送到非托管代码。某些 UnmanagedType 枚举成员需要附加信息。

相关文章

  • WKWebView 几个不常用的特性

    WKWebView 几个不常用的特性WKWebView 几个不常用的特性

  • 常用的特性

    属性可以放置在几乎所有声明中(但特定的属性可能限制它在其上有效的声明类型)。在语法上,属性的指定方法为:将括在方括...

  • C++ 11常用特性

    C++ 11常用特性(转)

  • 字典

    本节大纲 字典的定义与特性 字典的常用操作 字典的遍历 字典的定义与特性 字典的常用操作 字典的遍历-案例 扩展-...

  • Math方法和es新特性

    es6常用 es7新特性 es8新特性 es9新特性 es10新特性

  • Vue 常用特性

    常用特性概览 (1)表单操作(2)自定义指令(3)计算属性(4)侦听器(5)过滤器(6)生命周期 表单操作 基于 ...

  • Unity常用特性

    部分参考:https://indienova.com/indie-game-development/unity-t...

  • Vue常用特性

    一:表单操作 表单修饰符: ① ② ③ 二:自定义指令 常用(bind,inserted) bind:只调用一次,...

  • Vue常用特性

    ✍目录总览:(表单操作、自定义指令、计算属性、侦听器、过滤器、生命周期) 一、表单操作 1. 基于Vue的表单操作...

  • Vue常用特性

    1 - 表单操作 1. 基于Vue的表单操作 Input 单行文本 textarea 多行文本 select 下拉...

网友评论

      本文标题:常用的特性

      本文链接:https://www.haomeiwen.com/subject/jpemwttx.html