2023-10-27 13:41来源:m.sf1369.com作者:宇宇
vc,全称为Microsoft Visual C++,Microsoft Visual C++(简称Visual C++、MSVC、VC++6.0或VC6.0)是Microsoft公司推出的以C++语言为基础的开发Windows环境程序,面向对象的可视化集成编程系统。
一、性质不仔春同
1、Visual C++:Microsoft Visual C++(简称Visual C++、MSVC、VC++6.0或VC6.0)是Microsoft公司推出的以C++语言为基础的开发Windows环境程序,面向对象的可视化集成编程系统。
2、C++:C++是C语言的继承,进行C语言的过程化程序设计神敬。
二、作用不同
1、Visual C++:适合用来编写游戚慎各种复杂软件。
2、C++:可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。
三、特点不同
1、Visual C++:有高级语言简单易用的特性,又可以完成汇编语言才能做的许多工作。
2、C++:支持数据封装和数据隐藏;支持继承和重用;支持多态性。
参考资料来源:
百度百科-visualc++
百度百科-C++
VC++全称是Visual C++,VC并不是一种语言,而是提供了一系列C++类库(MFC和ATL)和相应的开发调试工具(IDE)的集合。 从使用角度而言,他是微软提供的专门用于开发Windows应用程序的一种解决方案。
此外,写Windows程序有很多途径,比如直接调用Win32API,使用MFC,使用ATL,或者使用其他类御颤型的跨平台库,比如Qt等等。基本思想是,直接使用Win32 API太麻烦了,所以通过MFC或者ATL对一些繁团穗杂的技术细节使用C++的语言特性进行封装,提供各自不同设计的编程框架,简化开发者的任务塌拆卜。
这才是VC++的核心!
就是c++语言。
所称VC,即Visual C++,只不过是一种C++语言的编译开发系统而已吵悄逗。它里面除了可以用基本的C++以外,主要升卖是提供了一套现成的程运瞎序库,可供用户组装自己的应用程序。它与其他系统的区别,可能主要就在这个库的内容不同,还有它提供的开发交互界面上的操作不同。
c++是c发展来的!!!
c++是面向对象的语言,而c是结构化的语言!
c的所有代码在c++上都能应用,而c++的代码在c上不能应用!!!
c++是功能更强大的c!!!
c语言与vc++的区别有很多:
1,全新的程序程序思维,c语言是面向过程的,而vc++是面向对象的。
2,c语言有标准的判昌森函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而vc++对于大多数的函数都是有集成的很紧密,特别是c语言中没有的vc++6.0中的api是对window系统的大多数api有机的组合,是一个集体。但你也可能单独调用api。
3,特别是vc++中的图形处理,它和语言的图形有很大的区别。c语言中的图形处理函数基本上是不能用在中vc++中的。迅亮主持人注:c语言标准中不包括图形处理。这里的c语言的图形处理指的是dos下的c语言。
4,c和vc++中都有结构的概念,但是在c语言中结构只有成员变量,而没成员方法,而在vc++中结构中,它可以有自己的成员变量和成员函数。但是在c语言中结构的成员是公共的,什么想访问它的都可以访问;而在vc++中它没有加限定符的为私有的。
4,c语言可以写很多方面的程序,但是vc++可以写得更多更好,vc++可以写基于dosr程序掘亩,写dll,写控件,写系统。
5,c语言对程序的文件的组织是松散的,几乎是全要程序处理;而vc++对文件的组织是以工程,各文件分类明确。
6,vc++中的ide很智能,和vb一样,有的功能可能比vb还强。
7,vc++对可以自动生成你想要的程序结构使你可以省了很多时间。有很多可用的工具如加入mfc中的类的时候,加入变量的时候等等。
8,vc++中的附加工具也有很多,可以进行系统的分析,可以查看api;可以查看控件。
9,调试功能强大,并且方法多样。
VC+---vision(可视化的)C++,就是可以把一些窗口编出来嘿嘿。跟VB差不过,比如出现个对话框啦,什么的。另外VC面向对象比较强要结合msdn进行学习和应用比较好
而C++呢就是编程的一种语言而已念岩兄有面向过程和面枣桐向对象仔袭的设计两大类而后者是VC++的基础,因为VC++学习基本都要用到MFC(类库)
目前,最优的选择有四个:
1.如果只在win下使用,.net form是不二选择,可谓是又快又好,企业应用或定制开发都是相当好的,初学者也可以入手。
2.electron,跨平台。需要会前端,必须熟悉js、css和html。属于前端人员大杀器,如果是初学者,需要一下子学三样东西,再加上electron的进程间通信,可能会被搞懵。
3. qt5,可以使用qml(js语法)进行UI编程,但是需要懂c艹,但是写软件相当快,还可以写安卓、ios、Linux、嵌入式中的应用。
4.flutter,刚刚正式支持win平台的软件开发。谷歌出的这个东西,适合没有基础的初学者,因为是一个全新的体系,全新的语言,写ios、安卓非常高效,之后还会兼容h5。如果是初学者可以跟着走,值得尝试。但是新枝基昌东西总有一些坑。
正式项目跨平台建议electron或qt,只用win平台强烈建议微软自己的net。个人技术尝试建议flutter。
桌面端开发跨平台的,如果你是轻量级的项目,那么我推荐你用electron, 目前使用Electron来开发的桌面应用非常多,我们最熟悉的比如Atom,VScode等等。
而且在github上也能找到许多应用使用了electron。
electron是Node,Chromium,html,css,js的结合框架,这就需要你有一定的前端基础。其实只需要了解一下electron的API就行了,其他的就像你在做web是一样的。
这种方式最大的缺点就是性能,还有透明窗口也有问题。所以在做需要性能方面占有很大成分的项目时,并不推荐使用这个方式。
那么其他的,就是最近几年使用比较多的windows directui框架,但它不是跨平台的。
那么就引出了qt,作为c++跨平台的界面框架,这个上手的话,我觉得对一般人是有难度的,因为首先需要扎实的c++功底,其次你要熟悉控件的制作原理,因为有时候你需锋败要定制自己的UI控件。它现在在嵌入式,军工领域非常受欢迎。但是整个库非常臃肿庞大,而且开发界面的效率也非常低。如果来做互联网项目,迭代更新的速度根本就跟不上。
目前都只有大公司会采用,像maya这种生产力型的应用很多是qt做的。
还有一种是直接使用Cef加js,比如网易云音乐,就是这么搞的,但是很多和系统平台的交互接口你需要重写,等于是需要自己造轮子。工作量大,目前没有适合的框架给你套用,也需要扎实的c++功底。
其实pc端的应用基本也就windows会火一些,再加一个macos,那么选择qt应该会很好一点,毕竟你自己造一个跨平台的框架,太费时。总之,做跨平台就意味着,不可能做到既有效率又完美的实现各种功能,许多都要自己摸索。
win桌面端直接上visual studio啊!然后你熟悉什么语言?vb.net,c#,c++都有相应的win桌面工具。直接用就好了,非常好用
编程语言这种东西无所谓,只要能用啥都可以。 主要看你老板需要和你会用什么语言。
比如 我用AS编安卓程序,当然用JAVA。不过我后台最开始用ASP和ASP.NET来做,现在换PHP了。桌面端用QT或者VB做。 涉及单片机部分控制也用C。
现在做跨平台的了 开始以QT为主了。
只要能达到目的啥都可以。
学会1-2种 换其他的也不是很难。
对初学者来建议学C起步吧。
精通一门,重新学个语言入门也就猛扒1个月的事。
PC桌面程序,如果简单一点的,用pyqt5+python的开发难度和周期都比较现实一点
会C++ 用Qt5 非常不错 写代码效率很高
会js 用atom使用的那个框架
会Python用PyQt 写代码很快
会java用JavaFX
看语言咯
还可以用delphi,其firemonkey框架发布8年时间,支持跨平台:win,安卓,ios,macos,linux,后续支持webassembly,界面是控件拖拽布局所见即所得,开发效率较高。编译生成的是机器码,编译速度快,调试方便,其生成机器码运行效率较高,支持x86,arm的32位64位处理器。支持跨平台3D界面,蓝牙通讯,定位,重力,摄像等,支持多种SQL,NoSQL数据库。单个开发工具实现前后端开发,跨平台开发。适合个人和小公司用一套工具实现大部分开发需求。
主要有以下几种技术
### Duilib
#### 简述
Duilib是在Windows平台上使用最广泛的类库,使用C++和XML混合编程,国内很多计算机企业都喜欢使用这个类库,可能是由于他的技术许可比较宽泛的原因。
适合于界面比较简单的软件,视觉特效丰富,局限于Windows的平台。例子:360电脑管家。
#### 优势
#### 劣势
### Gtk、Qt或WxWidget:
#### 简述
三种基本可以做到跨平台的技术,使用C/C++开发,使用者广泛。其中WxWidget使用了API嫁接方式,Qt和Gtk(包括各种绑定技术)使用自绘技术。
结构严谨,软件可以做的很大很复杂。例子:WPS和Maya。
#### 优势
#### 劣势
### Electron:
#### 简介
使用Web技术开发桌面软件,基于Chromium(Chrome)引擎,使用JS编程语言,绝大多数使用者都是原来的网页开发者。
绝大多数都是爱好者使用,处于“勉强可用”的地步。
适合大面积静态展示型软件使用。例子:网易云音乐。
#### 优势
#### 劣势
### QtQuick(QML)
#### 简述
Qt公司开发的一款基于OpenGL的图形类库,有显卡加速,类似于Duilib。采用了C++与QML混合编程。QML类似于JavaScript语言。
QtQuick下一个版本在Qt 6上更加强大,业界期待已久。
#### 优势
#### 劣势
### Atk、Swing或JavaFX
使用Java语言开发软件,有JDK加持业界积累的众多Java类库支持。有不输于VS的IDEA加持,本应该更棒,只是现在已经式微了。
绝大多数使用者都是企业开发(不追求界面美观)、爱好者(开发顺手)。
### WinForm、WPF或Xamarin:
使用C#开发,WinForm和WPF局限于Windows平台。有VisualStudio加持使用很爽。
### Flutter:
使用Dart语言,新类库,bug可能会很多。
### SwiftUI或Cocoa:
苹果平台原生界面技术,macOS平台内建支持,不是macOS专用软件不推荐。
### Win32:
经典Windows 平台API,绝大多数只有一些老软件还在使用,不是维护老软件不推荐。
winform,不二选择
webview2,作为一个浏览器控件嵌入在桌面应用中,支持.net core和.net framework