几分钟轻轻松松学好C++

开发 后端
许多编程人员学习C++总结经验为,有的觉得C++语言是一门独立的语言,并不是在C语言的基础上,可以直接学习C++不必先从C下手。

其实C#的语法与C++非常相似,有些变化引起的错误却很严重,本文就对于大多数用户头疼的C++语言进行详细的剖析与介绍,希望大家能从中找到自己想要的东西。

因为毕竟它并不是一个.net下的正统语言,.net应该是c#的舞台,作为一个C++程序员,我们应该庆幸,因为我们学习c#其实是简单的直接的,需要我们接受的新知识其实不多,相对其他语言来说,我们应该可以更加平滑的过渡到c#的开发中.废话不多说,现在就让我们用C++的基础来学习这个渐渐壮大的新语言-----C#
 
对于C#的讲解我只讲解和C++有区别的地方,相同的部分我就一带而过,.这样的对比学习可以让我们在已有知识的前提下快速掌握C#,一开始学习语言大部分的教程都会用一个Hello World程序来示范,我们也落入俗套,用Hello World来和C++中做一个比较:

  1. #include <iostream>   
  2.  
  3. using namespace std;   
  4.  
  5. void main()   
  6.  
  7. {   
  8.  
  9.      //C++程序   
  10.  
  11.      /* C++程序*/   
  12.  
  13.      cout<<"Hello World!"<<endl;   
  14.  
  15. }  
  16.  
  17. C#:  
  18.  
  19. using System;   
  20.  
  21. namespace HelloWorl   
  22.  
  23. {   
  24.  
  25.      class Class1   
  26.  
  27.      {   
  28.  
  29.          //C#程序   
  30.  
  31.          /*C#程序*/   
  32.  
  33.          ///C#程序   
  34.  
  35.          static void Main ()   
  36.  
  37.          {   
  38.  
  39.               Console.WriteLine ("Hello World!");   
  40.  
  41.          }   
  42.  
  43.      }   
  44.  
  45. }  

一眼看上去两者差不多,心中一阵窃喜,可以说C++语法的定义更加严格一些. 首先对于程序的进入点,最大的区别就是Main函数的开头必须要大写.因为C#是一个完全面向对象的程序语言,所以它的所有代码都必须定义在一个类中,Main函数也不例外,同时因为.net程序在编译运行时都是先转为中间语言,然后中间语言再编译为机器语言,这样的好处有2个。

如同Jave一样,写好的程序可以在不同的系统中运行,而不需要改变程序.二.使用不同的语言写的程序,因为要转化为相同的中间语言。所以在程序开发中可以使用不同的程序语言编写,而相互调用.,当使用不同语言开发或者进行分类开发时,各自开发的程序中会出现相同的变量名,函数名等,所以在写C#程序时,必须把程序包涵在一个名字空间内.

定义名字空间使用关键字:namespace <空间名>.当一个命名空间中的代码需要使用在另一个名字空间中定义的名称,就必须包括对该命名空间的引用,使用点字符(.) 这里就定义了两个名字相同的变量,我们可以使用LevelOne.A 和 LevelOne.LevelTwo.A 来独立使用它们,互不干扰。#t#

建立了名字空间后,我们可以使用using关键字来简化对它们包含的名称的访问.和C++中使用using namespace std的含义相似;对于主函数必须要有限定词static 这表明Main函数是静态的,在内存中只能有一个副本.

第一行中的using System.其命名空间是.NET应用程序的根名字空间,包涵了控制台应用程序所需要的所以基本功能.就如同C++中的头文件包涵在std这个名字空间中一样.Console.WriteLine ("Hello World!");Console是system名字空间中的一个类,其有一个WriteLine方法,它的作用和cout一样,输出一行字符串。

责任编辑:chenqingxiang 来源: CSDN
相关推荐

2010-01-14 16:10:21

C++开发

2010-01-15 10:14:21

C++ Builder

2010-01-18 11:20:58

C++语言

2010-01-20 18:17:55

C++异常问题

2010-01-20 10:31:18

C++编程技术

2009-09-15 16:26:46

Linq排序

2010-03-01 17:32:21

Python 测试模块

2010-03-03 18:13:23

Android组成框架

2009-06-10 17:58:41

2009-11-10 15:44:17

VB.NET常量

2009-11-09 15:41:14

WCF安全性

2017-10-27 12:00:28

MySQL数据库优化

2010-08-30 09:27:20

2015-09-22 10:31:11

2011-04-28 15:41:02

打印机卡纸

2019-11-28 10:21:01

MySQLDocker数据

2009-11-11 09:31:44

ADO.NET事务处理

2012-01-05 10:23:33

IE9预订火车票

2021-11-07 06:52:44

Windows 11操作系统微软

2019-05-28 15:05:10

NginxTomcat负载均衡
点赞
收藏

51CTO技术栈公众号