首页 Visual-studio2012指导教程

Visual-studio2012指导教程

举报
开通vip

Visual-studio2012指导教程Visual-studio2012指导(zhidac教程Visual-studio2012指导(zhlddo)教程VisualC++指导(zhYd百o)教程VisualStudio2012在本指导教程中,将介绍VisualStudio开发环境,以及可以使用(shTybng)VisualC++创建的各种类型的应用程序。其中包括(b合okub)命令行应用程序、Windows应用程序,甚至简单的游戏。本指导(zhldao)教程还将介绍如何创建可重用代码库,以及如何在编写和测试了代码后将其交付给客户。因为每个主题都以上一主...

Visual-studio2012指导教程
Visual-studio2012指导(zhidac教程Visual-studio2012指导(zhlddo)教程VisualC++指导(zhYd百o)教程VisualStudio2012在本指导教程中,将介绍VisualStudio开发环境,以及可以使用(shTybng)VisualC++创建的各种类型的应用程序。其中包括(b合okub)命令行应用程序、Windows应用程序,甚至简单的游戏。本指导(zhldao)教程还将介绍如何创建可重用代码库,以及如何在编写和测试了代码后将其交付给客户。因为每个主 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 都以上一主题中的信息(xinxT)为基础,所以我们建议您按顺序完成指导教程。在每个主题的底部,您可以找到指导教程下一主题的导航链接和上一主题的链接(如果需要返回并查看某些内容)。本指导教程假定您具备C++语言的基础知识。本节内容VisualStudioIDE简介(C++)描述如何使用VisualStudioIDE创建解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 和项目,以便有效地编写代码并生成、调试、测试和部署应用程序。创建命令行应用程序(C++)介绍C和C++命令行应用程序,讨论如何创建符合ANSI的C或C++程序,并描述如何使用命令行编译器编译应用程序。创建Windows应用程序(C++)描述如何创建WindowsAPI(Win32)应用程序、Windows窗体应用程序、Windows窗体控件,甚至简单的DirectX游戏。创建可重用代码(C++)描述如何创建动态链接库(DLL)、静态库和托管程序集,以便多个应用程序可以方便地重用(zh6ngy6ng)代码。下一步Mb讪要做什么(C++)包含指向(zhYxiang)文档其他部分的链接,您可以学习关于指导教程中介绍的主题的更多信息。VisualStudioIDE^介(jianjie)(C++)VisualStudio集成小ch^ng)开发环境(IDE)提供了一组工具,可帮助您编写和修改代码,以及检测和更正错误。在这些主题中,您将创建一个新的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 C++程序,并使用VisualStudio为C++开发人员提供的功能测试该程序的功能。您创建的简单程序将跟踪有多少个玩家正在玩各种纸牌游戏。本演练涵盖以下内容:演练:使用项目和解决方案(C++)演练:生成项目(C++)演练:测试项目(C++)演练:调试项目(C++)演练:部署程序(C++)演练:使用项目和解决方案(C++)在VisualStudio中,可以将您的工作组织为项目和解决方案。一个解决方案可以包含多个项目,例如,一个DLL和一个引用该DLL的可执行文件。有关更多信息,请参见解决方案和项目基础知识。此演练演示如何创建项目,使用“解决方案资源管理器”向项目中添加文件,在文件中键入代码,然后生成项目。系统必备若要完成本演练,您必须了解C++语言的基础知识。创建(chuangjian)项目在使用VisualStudio编写VisualC++程序的过程中,第一个任务是选择项目的类型。对于每个项目类型,VisualStudio均会设置编译器设置,并会为您生成起始代码(daim首)。在此演练中的项目中,您将创建一个基本程序,该程序跟踪有多少个玩家正在玩不同的纸牌游戏。创建(chuangjian)项目在"文件(wenjian)"菜^上指向"新建”,再单击"项目”。在新建项目对话框中,展开模板节点,展开VC++节点,然后单击Win32。在已安装的模板列表中,单击Win32控制台应用程序。输入项目名称。对于此示例,请输入游戏。当您创建项目时,VisualStudio会将该项目放入一个解决方案。默认情况下,解决方案的名称与项目名称相同。接受该名称。您可以接受默认位置、键入一个不同的位置或者浏览到要保存项目的目录。单击"确定”启动“Win32应用程序向导”。在"Win32应用程序向导”的"概述”页上,单击"下一步”。在“应用程序类型”下的“应用程序设置”页,选择“控制台应用程序”。在“附加选项”下选择“空项目”设置。单击“完成”。现在有了项目,但项目还没有源代码文件。使用解决方案资源管理器“解决方案资源管理器”可帮助您使用解决方案中的文件和其他资源。在本节中,您将向项目中添加一个类,并且VisualStudio将添加.h和.cpp文件。然后,为测试类的主程序向项目添加一个新的源代码文件。向项目添加类如果未显示“解决方案资源管理器”,请在“视图”菜单上,单击“解决方案资源管理器”。在“解决方案资源管理器”中,右击“头文件”文件夹,指向“添加”,然后单击“类”。在添加类向导(xiangdao),展^VisualC++节点(ji@dian),单击C++单击,在已安装模板(muban)的列表中C++类,然后(ranhou)单击添加(tianjia)o在“一般C++类向导”中,键入Cardgame作为“类名”,并接受默认的文件名和设置。单击“完成”。对已在编辑区域中打开的Cardgame.h文件进行以下更改:在类定义的左大括号之后添加两个私有数据成员。intplayers;•staticinttotalparticipants;int•添加一个采用类型为的参数之一的公共构造函数原型。•Cardgame(intp);删除VisualStudio生成的默认构造函数。默认构造函数是没有参数的构造函数。该默认构造函数类似于:Cardgame(void);在您对Cardgame.h文件进行更改之后,该文件应类似于:#pragmaonceclassCardgame8.{intplayers;staticinttotalparticipants;11.public:Cardgame(intp);~Cardgame(void);14.};#pragmaonce行指明编译器只包含该文件一次。有关更多信息,请参见一旦有关此头文件中的其他C++关键字的信息,请参见类43、int、静态(c++)和公共(C++)。双击"源文件”文件夹中的Cardgame.cpp,将其打开以进行编辑。#include"Cardgame.h"在之后,添加以下各行。#includeusingnamespacestd;19.为采用一个int参数的构造函数添加代码。Cardgame::Cardgame(intp)21.{players=p;totalparticipants+=p;cout<usingnamespacestd;33.34.Cardgame::Cardgame(intp)35.{players=p;totalparticipants+=p;cout< 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 的最后一行(),并单击“运行到光标9.处”.代码左侧的黄色箭头指向要执行的下一个语句.在Cardgame终止时,Cardgame::totalparticipants数应当减数应当减Cardgame::totalparticipants小.此时,应当等于0,这是因为所有的Cardgame指针都已删除,但是“监视1”窗口指示Cardgame::totalparticipants等于18代码中存在一个bug,您将在下一节中检测并修复它。10.在调试(d请oshi)菜单(c前dan)上,单击停止(伍ngzh)调试或按shiftF5以停止(tingzh!)程序。演练:调试(diaoshi)项目(C++)在本步骤中,您将修改程序以修复在测试项目时发现的问题。系统必备本主题假定您具备C++语言的基础知识。修复包含bug的程序若要明白在Cardgame对象销毁时会发生什么,请查看Cardgame类的析构函数。在“视图”菜单上,单击“类视图”,或者单击“解决方案资源管理器”窗口中的“类视图”选项卡。展开"游戏”项目树并单击"Cardgame”类。下方的区域显示类的成员和方法。右击"~Cardgame(void)”析构函数并单击"转到定义”。totalparticipants要在Cardgame终止时减少,请在Cardgame::~Cardgame析构函数的左大括号和右大括号之间键入以下代码:totalparticipants-=players;cout<11.usingnamespacestd;12.Cardgame::Cardgame(intp)13.{14.players=p;15.totalparticipants+=p;16.cout<5.intmain()7.{std::cout<<"ThisisanativeC++program."<5.intmain(){printf("ThisisanativeCprogram・\n");return0;}在"文件”菜单上,单击"保存”,以创建c源文件。关闭记事本。在命令提示符下,键入clsimple.c,并按EnterocLexe编译器将生成一个可执行程序Simple.exe。您可以在编译器显示的多行输出信息中看到可执行程序的名称。Microsoft(R)32-bitC/C++OptimizingCompilerVersion16.00for80x86Copyright(C)MicrosoftCorporation.Allrightsreserved・simple・cMicrosoft(R)IncrementalLinkerVersion10.00Copyright(C)MicrosoftCorporation.Allrightsreserved・/out:simple・exesimple・obj若要査看\simple\目录中的所有(su6y6u)文件的列表,请键入dirsimple.*并按Entero•obj文件是一个中间格式文件,可以(My!)安全地忽略它。若要运行(y^nxing)Simple.exe,请键入simple并按Entero该程序显示以下(yYxiR文本并退出:ThisisanativeCprogram.若要关闭(gu目nb)命令提示符窗口,请键入exit并按Enter。现在我们学习了VisualStudioIDE和命令行应用程序,下面将学习如何创建Windows应用程序。使用VisualC++,可以通过使用多种不同的技术来创建Windows应用程序,如WindowsAPI(也称为Win32API)和.NETFramework。在本节中,我们将通过使用Win32API和.NETFramework创建两个简单的Windows应用程序。我们还将通过使用.NETFramework创建Windows窗体控件,最后将通过使用DirectX创建一个简单的游戏。系统必备这些主题假定您具备C++语言的基础知识。本节内容创建基于Win32的应用程序(C++)通过使用(shiybng).NETFramework创建Windows窗体应用程序(C++)创建(chu直ngji言n)Windows窗体控件(C++)创建的一个(yTg®游戏资源使用DirectX(c++)本演练演示如何创建基于Win32的简单基本应用程序,该应用程序在窗口中显示(xianshi)MHello,World!”。您可以使用在此演练中开发的代码作为创建其他基于Win32的应用程序的模式。Win32API(也称为WindowsAPI)是用于创建Windows应用程序的基于C的框架。有关Win32API的更多信息,请参见WindowsAPI。重要事项为了可以更加清楚地说明本文档内各步骤中的特定代码段,我们可能会省略一个有效应用程序所必需的某些代码语句,例如include指令和全局变量声明。本文档末尾的示例一节显示了完整代码。系统必备若要完成本演练,您必须了解C++语言的基础知识。有关视频演示,请参见VisualStudio2008文档中的VideoHowto:CreatingWin32Applications(C++)(视频帮助:创建Win32应用程序(C++))。创建基于Win32的项目在“文件”菜单上,单击“新建”,然后单击“项目”。在"新建项目”对话框的左侧窗格中,单击"已安装的模板”,单击“VisualC++”,然后选择"Win32”。在中间窗格中,选择"Win32项目”。在“名称”框中,键入项目名称,例如win32app。单击“确定”。在"Win32应用程序向导”的"欢迎”页上,单击"下一步”。在"应用程序设置”页上的在“应用程序类型”下,选择"Windows应用程序”。在''附加选项”下,选择"空项目”。单击"完成”创建项目。在"解决方案资源管理器”中,右击Win32app项目,单击"添加”,然后单击"新建项”。在"添加新项”对话框中选择“C++文件(・cpp)”。在"名称”框中,键入文件名称,例如GT_HelloWorldWin32.cpp。单击"添加”。启动(qTdong)基于Win32的应用程序1.就像每个C应用程序和C++应用程序都以main函数作为起点那样(n^y宜ng),每个基于Win32的应用程序同样必须要有WinMain函数(hanshu)oWinMain具有以下(yTxia)语法。intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdShow);有关此函数(hanshu)的参数和返回值的信息,请参见WinMain函数由于应用程序代码必须使用现有定义,因此应将include语句添加到文件中。#include#include#include#include11.除WinMain函数外,每个基于Win32的应用程序还必须具有一个窗口过程函数。此函数通常名为WndProc。WndProc具有以下语法。12.LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);此函数处理应用程序从操作系统接收的许多消息。例如,在具有对话框(该对话框中有一个“确定”按钮)的应用程序中,如果用户单击该按钮,操作系统就会向该应用程序发送一条消息,告知已单击该按钮。WndProc负责响应该事件。在此示例中,相应的响应可能是关闭该对话框。有关更多信息,请参见窗口过程向WinMain函数添加功能1.在WinMain函数中,创建WNDCLASSEX类型的窗口类结构。此结构包含有关该窗口的信息,例如,应用程序图标、窗口的背景色、要在标题栏中显示的名称、窗口过程函数的名称等等。下面的示例演示一个典型WNDCLASSEX结构。2.□WNDCLASSEXwcex;3.4.wcex.cbSize=sizeof(WNDCLASSEX);5.wcex.style=CS_HREDRAW|CS_VREDRAW;6.wcex.lpfnWndProc=WndProc;7.wcex.cbClsExtra=0;8.wcex.cbWndExtra=0;9.wcex.hInstance=hInstance;10.wcex.hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_APPLICATION));11.wcex.hCursor=LoadCursor(NULL,IDC_ARROW);12.wcex.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);13.wcex.lpszMenuName=NULL;14.wcex.lpszClassName=szWindowClass;15.wcex.hIconSm=LoadIcon(wcex.hInstance,MAKEINTRESOURCE(IDI_APPLICATION));有关此结构(jiegou)的各字段的信息,请参见WNDCLASSEX16.现在您已经创建一个窗口(chu§ngk6u)类,接下来必须将其注册。使用RegisterClassEx函数,并将窗口类结构作为(zuowei)参数进行传递。17.if(!RegisterClassEx(&wcex))18.{19.20.MessageBox(NULL,_T("CalltoRegisterClassExfailed!"),59.}21.22.23.24.return1;_T("Win32GuidedTour"),NULL);25.}26.现在可以(k@y!)创建一个窗口。使用CreateWindow函数(hanshu)ostaticTCHARszWindowClass[]=_T("win32app");staticTCHARszTitle[]=_T("Win32GuidedTourApplication");29.//TheparameterstoCreateWindowexplained://szWindowClass:thenameoftheapplication//szTitle:thetextthatappearsinthetitlebar//WS_OVERLAPPEDWINDOW:thetypeofwindowtocreate//CW_USEDEFAULT,CW_USEDEFAULT:initialposition(x,y)//500,100:initialsize(width,length)//NULL:theparentofthiswindow//NULL:thisapplicationdoesnothaveamenubar//hInstance:thefirstparameterfromWinMain//NULL:notusedinthisapplicationHWNDhWnd=CreateWindow(szWindowClass,szTitle,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,500,100,46.NULL,NULL,hInstance,NULL50.);if(!hWnd){MessageBox(NULL,_T("CalltoCreateWindowfailed!"),_T("Win32GuidedTour"),NULL);57.58.return1;此函数返回HWND,它是某个窗口的句柄。有关(youguan)更多信息,请参见Windows数据类型60.现在,使用下列代码(d前ma)来显示窗口。//TheparameterstoShowWindowexplained://hWnd:thevaluereturnedfromCreateWindow//nCmdShow:thefourthparameterfromWinMainShowWindow(hWnd,nCmdShow);UpdateWindow(hWnd);此时,所显示的窗口不会有太多内容,因为®nwei)您尚未实现WndProc函数(hanshu)o67.现在添加一个消息循环以侦听(zhentTng)操作系统发送的消息。如果应用程序收到一条消息,则此循环会将该消息调度至WndProc函数以接受处理。消息循环类似于下列代码。68.69.70.71.72.73.74.75.MSGmsg;while(GetMessage(&msg,NULL,0,0)){TranslateMessage(&msg);DispatchMessage(&msg);}return(int)msg.wParam;有关消息循环中各结构和函数(hanshU)的更多信息,请参见MSG、GetMessageTranslateMessage和DispatchMessage此时(cYsh),WinMain函数应与下列(xi制ie)代码类似。intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdShow){WNDCLASSEXwcex;wcex.cbSize=sizeof(WNDCLASSEX);wcex.stylewcex.lpfnWndProcwcex.cbClsExtra=CS_HREDRAW|CS_VREDRAW;=WndProc;=0;wcex.cbWndExtrawcex.hInstance=0;=hInstance;wcex.hIconE(IDI_APPLICATION));wcex.hCursorwcex.hbrBackgroundwcex.lpszMenuNamewcex.lpszClassNamewcex.hIconSm=LoadIcon(hInstance,MAKEINTRESOURCLoadCursor(NULL,IDC_ARROW);(HBRUSH)(COLOR_WINDOW+1);NULL;szWindowClass;LoadIcon(wcex.hInstance,MAKEINTRESOURCE(IDI_APPLICATION));if(!RegisterClassEx(&wcex)){MessageBox(NULL,_T("CalltoRegisterClassExfailed!"),_T("Win32GuidedTour"),NULL);return1;}hInst=hInstance;//Storeinstancehandleinourglobalvariable//TheparameterstoCreateWindowexplained://szWindowClass:thenameoftheapplication//szTitle:thetextthatappearsinthetitlebar//WS_OVERLAPPEDWINDOW:thetypeofwindowtocreate//CW_USEDEFAULT,CW_USEDEFAULT:initialposition(x,y)//500,100:initialsize(width,length)//NULL:theparentofthiswindow//NULL:thisapplicationdowsnothaveamenubar//hInstance:thefirstparameterfromWinMain//NULL:notusedinthisapplicationHWNDhWnd=CreateWindow(szWindowClass,szTitle,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,500,100,NULL,NULL,hInstance,NULL);if(!hWnd){MessageBox(NULL,_T("CalltoCreateWindowfailed!"),_T("Win32GuidedTour"),NULL);return1;}//TheparameterstoShowWindowexplained://hWnd:thevaluereturnedfromCreateWindow//nCmdShow:thefourthparameterfromWinMainShowWindow(hWnd,nCmdShow);UpdateWindow(hWnd);//Mainmessageloop:MSGmsg;while(GetMessage(&msg,NULL,0,0)){TranslateMessage(&msg);DispatchMessage(&msg);}return(int)msg.wParam;}向WndProc函数添加(tianjia)功能若要启用(qTyong)WndProc函数来处理(chdll)应用程序所收到的消息,请实现switch语句。要处理(chUlT)的第一条消息是WM_PAINT消息。如果必须(bx町更新所显示的应用程序窗口的一部分,该应用程序就会收到此消息。(首次显示该窗口时,必须将其全部更新。)若要处理WM_PAINT消息,请首先调用BeginPant,然后处理用于布局该窗口中的文本、按钮和其他控件的所有逻辑,再调用EndPaint。对于此应用程序,开始调用和结束调用之间的逻辑会在窗口中显示字符串“Hello,World!”。在下列代码中,请注意TextOut函数用于显示该字符串。PAINTSTRUCTps;HDChdc;21.TCHARgreeting[]=_T("Hello,World!");switch(message){caseWM_PAINT:hdc=BeginPaint(hWnd,&ps);//Hereyourapplicationislaidout
本文档为【Visual-studio2012指导教程】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
天涯明月
暂无简介~
格式:doc
大小:234KB
软件:Word
页数:73
分类:
上传时间:2023-03-13
浏览量:11