我是一个新手程序员,有谁能清楚地告诉我C#中头文件和名称空间的用法吗?
因为在C++中,我使用******.h文件来读取库函数。当我在C#中看到一些他们丢失的示例程序时,谁能告诉我为什么?
我正在使用C#为一个机械CAD软件开发定制的工具,每当我使用适当的函数打开文件(CAD文件)时,编译器给我一个错误,说明我提供的函数名在上下文中不可用。在这里,上下文是什么意思?
当我打开该CAD应用程序的帮助文件时,负责打开该文件的函数在一个名为uf_part.h的头文件下被提及。但是有一个名为NXopen的名称空间。
我在Visual Basic中使用了名称空间作为using NXopen,这还不够吗?我也需要提供那个头文件吗?如果是这样的话,是怎么做的?请帮帮我。
发布于 2012-08-05 15:57:18
C#更加“对程序员友好”。当处理同一项目的文件时,它将根据命名空间在所有项目文件中查找匹配项,而不是每次都手动指定“头文件”。
要了解这一点,请执行以下步骤:
如何做到这一点?只需对两个类使用相同的名称空间即可。.NET引擎足够智能,可以将所有这些类链接在一起。
现在,当外部代码意味着代码位于不同的DLL文件中时,诀窍是添加对该DLL的引用(在Studio中-->右键单击项目-->添加引用-->浏览),然后您需要通过在顶部添加一条using语句来指定要使用该DLL:
using ExternalDllName.ExternalNamespace;事情就是这样。与C++不同的是,你不需要.h文件,因为.NET会自动在引用的DLL文件中搜索匹配项。
发布于 2012-08-05 15:48:00
在.net中没有头文件这样的东西,因为所有需要的元数据都包含在引用的程序集中。
您是否在项目中引用了所需的程序集?还请记住,在C#中没有“函数”这样的东西,只有类方法(这意味着你必须在调用中指定对象或静态类)。
还有:General Structure of a C# Program
发布于 2012-08-05 15:58:30
现代语言(如C#或Java )的编译器在编译后的文件中存储有关它们所包含的类和方法的信息,该信息可用于检查从一个源文件到另一个源文件或对库类进行的调用的正确性。
当C语言发明时,磁盘空间、内存和CPU能力是宝贵的资源,这种方法是不可能的。引入头文件是为了允许编译器检查不同的源文件是否符合相同的接口。当C++发明时,上面描述的方法可能是可能的,但我猜它是出于兼容性原因而选择使用C语言的。
https://stackoverflow.com/questions/11814771
复制相似问题