Wandering between the native & managed world

CLR/.NET 4.0开发中~~

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

11 2008 档案

摘要:sizeof在非Unsafe环境下只能用于预定义的一系列类型,如Int,Short等等。而在Unsafe环境下,sizeof可以被用于值类型,但是值类型中不可以有引用类型,否则C#编译器会报错: error CS0208: Cannot take the address of, get the size of, or declare a pointer to a managed type ('Si... 阅读全文
posted @ 2008-11-29 22:33 张羿 阅读(465) 评论(0) 推荐(0)

摘要:前几天写代码的时候遇到了一个十分诡异的编译错误。对于下面的代码,你能够发现问题在那里吗? 1: #define test(a, b, c) \ 2: a; \ 3: if (b) \ 4: c 编译器给出了下面这个错误信息: testdefine.cpp(8) : error C205... 阅读全文
posted @ 2008-11-29 22:27 张羿 阅读(439) 评论(0) 推荐(0)

摘要:上次我们谈到了.NET 4.0中为什么要引入Type Equivalency这样一个新功能,这次我们来看一个比较简单的一个程序: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Office.Interop.Excel; namespa... 阅读全文
posted @ 2008-11-24 23:58 张羿 阅读(2202) 评论(5) 推荐(0)

摘要:在.NET 4.0 CTP中,最引人注目的Interop的改进当属Type Equivalency,又称之为NO PIA。在介绍如何使用这个新特性之前,我觉得还是应该从历史讲起,探究我们究竟要解决什么样子的问题,过去采用了什么样的解决办法,以及这些办法都有那些问题。 在.NET中,为了访问COM对象,需要定义一系列托管的Interface、Struct、以及class。有了类型库(TypeLibr... 阅读全文
posted @ 2008-11-07 23:41 张羿 阅读(2181) 评论(1) 推荐(0)