C#基本问题

刚开始接触VS中的C#,眼花缭乱的,有解决方案名称,项目名称,namespace名称,文件名称,类名称等等,一大堆东西,感觉很能乱,他们到底是怎样的包含关系?谁大谁小?以... 刚开始接触VS中的C#,眼花缭乱的,
有解决方案名称,
项目名称,
namespace 名称,
文件名称,
类名称
等等,
一大堆东西,感觉很能乱,他们到底是怎样的包含关系?谁大谁小?
以前学过 Turbo C 2.0 ,建一个 *.c 文件,里面有一个 main() 函数就行了,非常清晰,如果还要调用自编的库,只要在源文件开头写上 #include 文件名.h 就行了。可到了 C# 里,Main() 函数外为什么还要套一个 Class Program 类??在 Class Program 类外面为什么还要套一个 namespace ??还有什么项目名、解决方案名、类名、文件名、函数名等等,他们的层次关系到底是怎样的?哪位专家能给排一下层次关系?从最大排到最小。谢谢。
还有 using 后到底是跟 DLL 文件名还是名称空间名?
展开
 我来答
百度网友d242235
2012-03-10 · TA获得超过2385个赞
知道大有可为答主
回答量:1403
采纳率:84%
帮助的人:812万
展开全部
C#不乱,只是你刚接触,不习惯而已。
1.C#中一切皆对象,int、string其实都是对象,你的main()函数也需要放在一个特定的对象中,才可执行,所以main()会被放进Program.cs(叫其它名称也可以)。
2.至于namespace,那是为了更精确的区分不同程序集之间的相同类名称。比如你写了一个类库,里面包含一个类MyClass,别人可能也有一个叫做MyClass的类,如果同时被你的程序使用,就需要命名空间来区分。例如A.MyClass,B.MyClass,其中的A、B就是不同的命名空间的名字。
3.层次关系:
解决方案名=>项目名=>类名=>函数名,从左到右都是包含关系。
4.using后面跟的是命名空间名称。因为dll名字可以随便起,但是里面包含的命名空间是代码中指定好了的。
追问
谢谢,非常好,比较清楚了。
那个层次关系是不是可以改成这样:
解决方案名>项目名>文件名>名称空间名>类名>函数名(或叫方法名) ??
一个文件名可以包含多个 namespace 吗?
追答
你说的文件名是什么,不太了解。解决方案、项目、类其实都是文件(后缀名sin、csproj、cs)。如果你是指cs文件的话,那你的排序没问题。一个cs文件可以有多个namespace,一个namespace可以有多个类。
cs文件>namespaca>类>函数
leiyangbdwk
2012-03-10 · TA获得超过3295个赞
知道大有可为答主
回答量:4975
采纳率:12%
帮助的人:4363万
展开全部
这种质疑精神值得赞扬。
你也可以通过查阅MSDN,相信这是“天下书籍一大抄”的源头。
另外,你似乎对面向对象的思想不是很了解,大概没有学过c++吧,建议你还是学习c++的基础课程。
namespace可以这样理解,由于系统的复杂性和英文词汇的有限性,程序员们的函数名或者类名可能会相互冲突,命名空间就是增加了一个区别的层次而已,别无他用。
using后面是dll还是文件名,你自己动手写一个dll然后调用就知道了,不会就hi我把。
追问
C++学过的,不过不深。你一句“namespace 。。。。。别无他用”加上楼上那位朋友“一无安慰”让我彻底清楚了,解决方案可以包含一个或多个工程,一个工程可以包含一个或多个 C#文件或其他引入的文件,一个C#文件可以包含一个或多个 namespace(也可以没有namespace直接写 一些 class),一个namespace(如果有的话)可以包含一个或多个 class,一个class 中可以包含0个或N个函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
enflower55
2012-03-10
知道答主
回答量:43
采纳率:0%
帮助的人:11.5万
展开全部
你还是从最基本的书开始看吧
追问
书中没有对这些东西层次关系进行详细的说明,天下书籍一大抄,大部分书难看,毫无特色,许多书一开始就钻进细节,山的轮廓还不清楚就在讲里面的一棵树,让读者云里雾里,看清全局脉络才是重要的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式