Visual Studio C++使用教程Word文档下载推荐.docx
- 文档编号:17565664
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:57
- 大小:85.34KB
Visual Studio C++使用教程Word文档下载推荐.docx
《Visual Studio C++使用教程Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Visual Studio C++使用教程Word文档下载推荐.docx(57页珍藏版)》请在冰豆网上搜索。
接受该名称。
您可以接受默认位置、键入一个不同的位置或者浏览到要保存项目的目录。
单击“确定”启动“Win32应用程序向导”。
4.在“Win32应用程序向导”的“概述”页上,单击“下一步”。
5.在“应用程序类型”下的“应用程序设置”页,选择“控制台应用程序”。
在“附加选项”下选择“空项目”设置。
单击“完成”。
现在有了项目,但项目还没有源代码文件。
使用解决方案资源管理器
“解决方案资源管理器”可帮助您使用解决方案中的文件和其他资源。
在本节中,您将向项目中添加一个类,并且VisualStudio将添加.h和.cpp文件。
然后,为测试类的主程序向项目添加一个新的源代码文件。
向项目添加类
1.如果未显示“解决方案资源管理器”,请在“视图”菜单上,单击“解决方案资源管理器”。
2.在“解决方案资源管理器”中,右击“头文件”文件夹,指向“添加”,然后单击“类”。
在“VisualC++”类别中,单击“C++”,在“VisualStudio已安装的模板”区域中单击“C++类”,然后单击“添加”。
3.在“一般C++类向导”中,键入Cardgame作为“类名”,并接受默认的文件名和设置。
4.对已在编辑区域中打开的Cardgame.h文件进行以下更改:
∙在类定义的左大括号之后添加两个私有数据成员。
intplayers;
staticinttotalparticipants;
∙添加一个采用类型为int的参数之一的公共构造函数原型。
Cardgame(intp);
∙删除VisualStudio生成的默认构造函数。
默认构造函数是没有参数的构造函数。
该默认构造函数类似于:
Cardgame(void);
5.在您对Cardgame.h文件进行更改之后,该文件应类似于:
#pragmaonce
classCardgame
{
intplayers;
staticinttotalparticipants;
public:
Cardgame(intp);
~Cardgame(void);
};
#pragmaonce行指明编译器只包含该文件一次。
有关更多信息,请参见once。
有关此头文件中的其他C++关键字的信息,请参见class(C++)、int、Static(C++)和public(C++)。
6.双击“源文件”文件夹中的Cardgame.cpp,将其打开以进行编辑。
7.在#include"
Cardgame.h"
之后,添加以下各行。
#include<
iostream>
usingnamespacestd;
8.为采用一个int参数的构造函数添加代码。
Cardgame:
:
Cardgame(intp)
players=p;
totalparticipants+=p;
cout<
<
p<
"
playershavestartedanewgame.Therearenow"
<
totalparticipants<
playersintotal."
endl;
}
开始键入pl或to时,可以按Ctrl+空格键,以便自动完成功能将为您完成键入players或totalparticipants的操作。
9.删除VisualStudio生成的以下默认构造函数。
10.在您对Cardgame.cpp文件进行更改之后,该文件应类似于:
#include"
~Cardgame(void)
有关#include的更多信息,请参见The#includeDirective。
添加源文件
现在,为测试类的主程序添加一个源代码文件。
添加新源文件
1.在“解决方案资源管理器”中,右击“源文件”文件夹,指向“添加”,然后单击“新建项”。
在“VisualC++”类别中,选择“代码”,然后单击“C++文件(.cpp)”。
2.键入testgames作为名称,然后单击“添加”。
3.在testgames.cpp编辑窗口中,键入以下代码。
intCardgame:
totalparticipants=0;
intmain()
Cardgame*bridge=0;
Cardgame*blackjack=0;
Cardgame*solitaire=0;
Cardgame*poker=0;
bridge=newCardgame(4);
blackjack=newCardgame(8);
solitaire=newCardgame
(1);
deleteblackjack;
deletebridge;
poker=newCardgame(5);
deletesolitaire;
deletepoker;
return0;
有关此源文件中的C++关键字的信息,请参见newOperator(C++)和deleteOperator(C++)。
4.在“生成”菜单上,单击“生成解决方案”。
来自生成的输出应显示在“输出”窗口中。
这表示项目已编译,并且未发生错误。
如果未显示输出,请将您的代码与前面步骤中提供的代码进行比较。
在本步骤中,您将故意在代码中引入一个VisualC++语法错误,以了解什么是编译错误,以及如何修复它。
编译项目时,会显示错误消息以指示所发生的问题的性质和位置。
使用IDE修复编译错误
1.在testgames.cpp中,删除最后一行中的分号,使代码如下所示:
return0
2.在“生成”菜单上,单击“生成解决方案”。
3.“输出”窗口中显示一条消息,指示生成项目失败。
单击“输出”窗口中的“转到下一条消息”按钮(指向右方的绿色箭头)。
“输出”窗口中的错误消息和状态栏区域指示右大括号前缺少一个分号。
若要查看有关错误的更多帮助信息,请突出显示错误,并按F1键。
4.将分号重新添加到导致语法错误的行的末尾:
return0;
5.在“生成”菜单上,单击“生成解决方案”。
“输出”窗口中显示一条消息,指示项目已正确编译。
以“调试”模式运行程序使您可以使用断点来暂停程序,以检查变量和对象的状态。
在本步骤中,您将在程序运行时观察变量的值,并推断为什么值与预期的不同。
以“调试”模式运行程序
1.如果“testgames.cpp”文件不可见,请在编辑区域中单击该文件对应的选项卡。
2.单击以下行,将其设置为编辑器中的当前行:
solitaire=newCardgame
(1);
3.若要在该行上设置断点,请单击“调试”菜单上的“切换断点”,或者按F9。
也可以单击代码行左侧的区域来设置或清除断点。
设置了断点的代码行的左侧会显示一个红色圆圈。
4.在“调试”菜单上,单击“开始调试”,或者按F5。
当程序运行到包含断点的行时,执行将暂时停止(因为程序处于“中断”模式)。
代码行左侧的黄色箭头指示该行是要执行的下一个代码行。
5.若要检查Cardgame:
totalparticipants变量的值,请将鼠标指针悬停在该变量上方。
该变量的名称及其值12即显示在工具提示窗口中。
右击Cardgame:
totalparticipants变量。
选择“表达式:
‘totalparticipants’”,并单击“添加监视”以在“监视”窗口中显示该变量。
您也可以选择该变量并将其拖动到“监视”窗口。
6.在“调试”菜单上,单击“逐过程”,或者按F10步进到下一行代码。
totalparticipants的值现在显示为13。
7.右击main方法的最后一行(return0;
),并单击“运行到光标处”。
代码左侧的黄色箭头指向要执行的下一个语句。
8.在Cardgame终止时,Cardgame:
totalparticipants数应当减小。
此时,Cardgame:
totalparticipants应当等于0,这是因为所有的Cardgame指针都已删除,但是“监视1”窗口指示Cardgame:
totalparticipants等于18。
代码中存在一个bug,您将在下一节中检测并修复它。
9.在“调试”菜单上,单击“停止调试”或者按Shift-F5停止程序。
在本步骤中,您将修改程序以修复在测试项目时发现的问题。
修复包含bug的程序
1.若要明白在Cardgame对象销毁时会发生什么,请查看Cardgame类的析构函数。
在“视图”菜单上,单击“类视图”,或者单击“解决方案资源管理器”窗口中的“类视图”选项卡。
展开“游戏”项目树并单击“Cardgame”类。
下方的区域显示类的成员和方法。
右击“~Cardgame(void)”析构函数并单击“转到定义”。
2.要在Cardgame终止时减少totalparticipants,请在Cardgame:
~Cardgame析构函数的左大括号和右大括号之间键入以下代码:
totalparticipants-=players;
cout<
players<
playershavefinishedtheirgame.Therearenow"
3.进行更改后,Cardgame.cpp文件应如下所示:
totalparticipants-=players;
5.在“调试”菜单上,单击“启动调试”,或按F5,以“调试”模式运行该程序。
程序将在第一个断点处暂停。
6.在“调试”菜单上,单击“逐过程”或者按F10逐句通过程序。
请注意,执行每个Cardgame构造函数后,totalparticipants的值会增大。
而在删除每个指针(并调用析构函数)后,totalparticipants的值会减小。
7.单步执行至程序的最后一行。
恰好在执行return语句之前,totalparticipants等于0。
继续逐句通过程序,直到程序退出;
或者,在“调试”菜单上,单击“运行”或按F5,允许程序继续运行,直到退出。
现在,我们创建了应用程序,最后一步是创建可供其他用户在其计算机上安装该程序的安装程序。
为此,我们需要将新项目添加到现有解决方案。
此新项目的输出是setup.exe文件,该文件用于安装我们之前在另一台计算机上创建的应用程序。
创建安装项目和安装程序
1.在“文件”菜单上,单击“新建”,再单击“项目”。
随即出现“添加新项目”对话框。
2.在“已安装的模板”下,展开“其他项目类型”节点。
接着,展开“安装和部署”节点并单击“VisualStudioInstaller”。
3.从“模板”窗格中,选择“安装向导”。
键入安装项目的名称,例如gameInstaller。
在“解决方案”列表框中,选择“添加到解决方案”。
单击“确定”按钮。
4.将出现“安装向导”。
单击“下一步”继续。
5.从向导的“选择一种项目类型”窗格中,选择“为Windows应用程序创建一个安装程序”选项,并单击“下一步”继续。
6.从向导的“选择要包括的项目输出”窗格,选择“主输出来自游戏”,并单击“下一步”继续。
7.无需在安装程序中包括任何其他文件,因此,从安装程序的“选择要包括的文件”窗格中,单击“下一步”。
8.检查向导的更改,并验证所有内容是否正确。
单击“完成”创建项目。
“解决方案资源管理器”中将列出新的gameInstaller项目。
此项目将列出应用程序依靠的依赖项(如C运行库或.NETFramework)以及安装程序中将包括的项目文件。
创建安装项目后,有许多选项可以更改。
有关更多信息,请参见VisualStudioInstaller部署。
9.通过在“解决方案资源管理器”中选择安装程序并从“生成”菜单单击“生成gameInstaller”来生成安装程序。
10.找到上一节创建的setup.exe和gameInstaller.msi程序。
在计算机上双击任一文件安装应用程序。
创建命令行应用程序(C++)
我们已经学习了VisualStudioIDE,现在可以开始使用VisualC++编写程序了。
我们将学习创建的第一个应用程序类型是命令行应用程序。
命令行应用程序不包含图形用户界面(GUI)。
通常,命令行应用程序从控制台读取输入,并将输出写入该控制台,而不是写入图形窗口。
在本节中,您将学习如何创建C和C++命令行应用程序。
还将学习如何创建不使用Microsoft扩展的标准C和C++程序。
如果您希望使用VisualC++创建在其他操作系统上使用的应用程序,这将很有用。
创建标准C++程序(C++)
可以使用VisualC++2010在VisualStudio集成开发环境(IDE)中创建标准C++程序。
通过采用此演练中的步骤,您可以创建一个项目,向该项目添加一个新文件,修改该文件以添加C++代码,然后使用VisualStudio编译并运行程序。
您可以键入自己的C++程序,或者使用示例程序之一。
此演练中的示例程序是一个控制台应用程序。
此应用程序使用标准模板库(STL)中的set容器。
VisualC++使用2003C++标准进行编译,但有以下几点主要例外之处:
两阶段名称查找、异常规范和导出。
此外,VisualC++支持若干C++0x功能,例如,lambda、自动、static_assert、rvalue引用和extern模板。
创建项目并添加源文件
1.通过以下方式创建一个项目:
指向“文件”菜单上的“新建”,然后单击“项目”。
2.在“VisualC++”项目类型窗格中,单击“Win32”,然后单击“Win32控制台应用程序”。
默认情况下,包含项目的解决方案与项目同名,但您可以键入其他名称。
您也可以为项目键入其他位置。
单击“确定”创建项目。
4.在“Win32应用程序向导”中,单击“下一步”,选择“空项目”,然后单击“完成”。
5.如果未显示“解决方案资源管理器”,请在“视图”菜单上,单击“解决方案资源管理器”。
6.将一个新源文件添加到项目,如下所示。
a.在“解决方案资源管理器”中,右击“源文件”文件夹,指向“添加”,然后单击“新建项”。
b.在“代码”节点中单击“C++文件(.cpp)”,为文件键入名称,然后单击“添加”。
该.cpp文件即显示在“解决方案资源管理器”中的“源文件”文件夹中,并且文件将在VisualStudio编辑器中打开。
7.在编辑器内的文件中,键入使用标准C++库的有效C++程序,或者复制示例程序之一并将其粘贴在文件中。
例如,您可以使用set:
find(STLSamples)示例程序,该程序是帮助中附带的标准模板库示例之一。
如果使用该示例程序,请注意usingnamespacestd;
指令。
此指令使程序能够使用cout和endl,而无需完全限定名(std:
cout和std:
endl)。
8.保存该文件。
9.在“生成”菜单上,单击“生成解决方案”。
“输出”窗口显示有关编译过程的信息,例如,生成日志的位置,以及指示生成状态的消息。
10.在“调试”菜单上,单击“开始执行(不调试)”。
如果使用了示例程序,将显示一个命令窗口,其中显示是否在集合中找到了特定的整数。
在命令行上编译本机C++程序(C++)
VisualC++包括一个C++编译器,可用来创建从基本VisualC++程序到Windows窗体应用程序和组件的各种程序。
通过按此演练的过程进行操作,您可以通过使用文本编辑器创建基本的VisualC++程序,然后在命令行上对其进行编译。
也可以编译使用VisualStudio集成开发环境(IDE)创建的VisualC++程序。
有关更多信息,请参见演练:
在VisualStudio中编译面向CLR的C++程序(C++)。
您可以使用自己的VisualC++程序,而不是键入下面步骤中所示的程序。
也可以使用其他帮助主题中的任何VisualC++代码示例程序。
创建VisualC++源文件并在命令行上对其进行编译
1.打开“VisualStudio2010命令提示”窗口,方法是单击“开始”,指向“所有程序”、“MicrosoftVisualStudio2010”、“VisualStudio工具”,然后单击“VisualStudio2010命令提示”。
可能需要管理员凭据才能成功编译此演练中的代码,具体情况视计算机的操作系统和配置而定。
若要以管理员身份运行“VisualStudio2010命令提示”窗口,请右击“VisualStudio2010命令提示”,然后单击“以管理员身份运行”。
2.在命令提示符下,键入notepadbasic.cpp,并按Enter。
在系统提示是否创建文件时,单击“是”。
3.在记事本中,键入下列各行。
std:
ThisisanativeC++program."
endl;
4.在“文件”菜单上,单击“保存”。
这样就创建了一个VisualC++源文件。
5.关闭记事本。
6.在命令提示符下,键入cl/EHscbasic.cpp,并按Enter。
/EHsc命令行选项指示编译器启用C++异常处理。
有关更多信息,请参见/EH(异常处理模型)。
cl.exe编译器将生成一个名为basic.exe的可执行程序。
您可以在编译器显示的多行输出信息中看到可执行程序的名称。
7.若要查看目录中具有名称basic以及任何文件扩展名的文件的列表,请键入dirbasic.*并按Enter。
.obj文件是一个中间格式文件,可以安全地忽略它。
8.若要运行basic.exe程序,请键入basic并按Enter。
该程序显示以下文本并退出:
ThisisanativeC++program.
9.若要关闭“VisualStudio2010命令提示”窗口,请键入exit并按Enter。
编译使用.NET类的VisualC++程序
下面的步骤演示如何编译使用.NETFramework类的VisualC++程序。
您必须使用/clr(公共语言运行时编译)编译器选项,因为此程序使用.NET类并且必须包括必要的.NET库。
VisualC++编译器生成的.exe文件包含MSIL代码,而不是可由计算机执行的指令。
按照本过程中的步骤编译帮助主题中的任何VisualC++示例程序。
在命令行上编译VisualC++.NET控制台应用程序
1.打开“VisualStudio2010命令提示”窗口,方法是单击“开始”,指向“
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Visual Studio C+使用教程 C+ 使用 教程
![提示](https://static.bdocx.com/images/bang_tan.gif)