中易网

c++和api和mFC的有什么关系?

答案:5  悬赏:0  
解决时间 2021-03-15 07:46
大家好,我想提问一个问题,就是,我下个月就要开c++了,但是,我现在很是迷茫,我们已经学了C语言,而且我的C语言言至少已经回了一些中等的编程,但是,我想在下个月开始学习c++,但是,我只是知道,c++是面向对象的额,但是,再看一下,这个API函数,以及MFC到底与这个c++有什么关系?再就是,c++的领域、也是很广,有游戏,有软件开发,我问的是 ,我想从事web方面的开发,这个c++是不是可以?再就是,编写软件,
再就是 ,这个tcp/ip通信协议是不是要学好?咋就是这个数据库,有SQL和甲骨文的那, 我们应该学习那个?
如果我要是想从事程序的开发,就是围绕网络的,我还因该学习什么那?
我弄不明白的就是,这个api到底是怎么用以及如何用VC开发出程序或者是简单的小游戏,以及web方面的 东西,难道这个c++开发的程序就是不断调用这个api函数,但是,这个mfc又是什么回事?
我真的搞不懂,额,
再就是了,我在学习C++的时候还应该学习什么知识?麻烦各位了,我真的,搞不清楚啊,现在还在迷茫那,,我不想因为这个事儿浪费时间了,恩,
麻烦各位了,请各位吧自己的经历说出来,帮助我一下,,谢了,,,高分,,,,,
最佳答案
楼主还是先安心学C++吧

API是应用程序接口的意思,楼主所说的API应该是指Windows API吧,它是Windows给应用程序提供的接口函数,Windows下的应用程序都要调用API。

不过C++并不是不断调用API,调用API只是C++ Windows程序的一部分。

至于MFC是Microsoft为Windows编程提供的类库,楼主学了C++以后就知道什么是类库了。

如果要做网络编程tcp/ip当然是要学好的,楼主所说的数据库应该是Microsoft SQL Server和甲骨文吧,SQL是“结构化查询语言”的意思,是一种用于数据库的通用查询语言。不同的数据库管理系统就和不同的C++编译器差不多,他们的内容是基本相同的,只是各自做了些不同的扩展,所以学哪个不是问题,但数据库相关的理论要学好。

Web方面的东西还有很多,比如Java,.net, php, css, XML....

看楼主的提问估计楼主还算不上初学,是准备开始学的时候,所以安安心心学基础才是王道,这个本来就是很耗时间很耗精力的事情,切忌浮躁。

楼主+U!
全部回答
"而且我的C语言言至少已经回了一些中等的编程"?
呵呵,这个问题也太长了吧。 C++是面向对象的不错,但它还是支持泛型(比宏还可怕但又更强大的东西)的语言。 至于API嘛,也就是应用程序接口,它跟C++一毛钱关系都没有,啥语言都可以用。它分为系统级的和应用级的,系统级的一般由操作系统及其他系统软件所提供,和普通函数一样它有参数(也可以没有)和返回值(也可以没有比如void类型)。 MFC嘛,它就是一个“微软基础类库”,说白了就是把操作系统API及一些常用元素、界面元素等等等等的元素都给搞成一个一个的类了:) 类嘛,您可以理解为:结构体+针对结构体的操作的函数——以后再慢慢深入:) 如果您是打算搞WEB开发~~~那就基本不会用C++了。 如果您是打算搞网络开发,那TCP/IP协议还是必须会的,建议找一本叫《高级UNIX网络开发》这本书看看。除此外还要会多线程程序开发:)
MFC基础类库   API应用程序接口   MFC向用户提供的是面向对象的类   API向用户提供的是windows向用户提供的比较基础的可调用函数   MFC的最底层用的是API,不过这对用户是透明的。   MFC能做的API一定能做   API能做的MFC不一定。   比如说让一个ID为IDC_BUTTON1的按钮实效:   MFC的做法是   GetDlgItem(IDC_BUTTON1).EnableWindow(false); //GetDlgItem返回了IDC_BUTTON1的CWnd类,再调用类的EnableWindow方法。   API的做法是   ::EnableWindow(GetDlgItem(IDC_BUTTON1).GetSafeHwnd(),false); //这里实际上也用了MFC的内容,就是调用CWnd类的GetSafeHwnd()来获取按钮的句柄,API对窗口操作使用句柄来做标识的。这里的EnableWindow不是上面的EnableWindow,它直接调用了API的EnableWindow这个函数,将这个句柄的窗体(按钮也是窗体)设置为失效。
额,说的真多。 首先,c++是一种语言,MFC是微软的一种封装了windows下的api的类库,就是你不用记住api,直接调用MFC类库,但归根结底是调用了api。 MFC是windows下的,就像可以跨平台的Qt一样,都属于第三方类库,linux下多用Qt编程。一些界面的东西,用纯C++程序很难搞定,但是借助这些第三方类库就很容易实现。 其次,API编程就是操作系统提供的可以跟底层驱动交互的函数,例如write函数,你直接调用,但是不用管到底是怎么以二进制写进磁盘的,windows下有他的API,linux下也有自己的API。 最后,网络编程,c++在网络游戏方面很有优势(C/S架构),偏底层的网络通信(socket、tcp)。而如果是普通的一些B/S架构的程序,可以用jSP,ASP实现。 学习C++,先把最基本的学习,可以看C++ Primer,然后看Inside The C++ Object model,还有一些effective C++,more effective c++。 然后学习第三方类库,windows下也可以学习Qt。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
哈士奇能做猎犬吗?
我要小名!4月生的,要好听的,这就些,没了
牛筋怎么煮烂,煮牛筋小技巧
耒加吕是什么字
新启路/西一道街(路口)我想知道这个在什么地
男,1米7,132斤,胖不胖
小米3手机qq语音对方听不到我的声音
太红山在哪里啊,我有事要去这个地方
涿州威尔第电话
买zippo火轮
powerpoint中本次复制内容成功后上次复制的就
铁蛋鸡汤刀削面 西安总店怎么样
烟云酒水超市在哪里啊,我有事要去这个地方
qq会员开啦11个月,再开超级会员天数会增加吗
“一开始我只哭着看你,装作不正经…”是蔡依
推荐资讯
大话西游中的周星驰心里的眼泪是谁留下的?
天蝎座暗恋一个人的表现是怎么样的呢?
有没有人知道澳门哪里有mac魅可的专柜
无意中被一个论坛站长为版主,我想退出,不当
为什么金无足赤
新安镇村怎么去啊,有知道地址的么
北方人都不喜欢开窗通风吗
找一本关于公主侍女和摄政王的小说
AB*A=114,AB*B=304.AB*BA=3154。问A=? B=?
独眼可以开C1车上路吗
摩托车几年审车车
YY微房角色扮演隐名趣味聊天按哪个建说话
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?