Visual Studio C++使用教程Word下载.docx
《Visual Studio C++使用教程Word下载.docx》由会员分享,可在线阅读,更多相关《Visual Studio C++使用教程Word下载.docx(59页珍藏版)》请在冰豆网上搜索。
在使用VisualStudio编写VisualC++程序的过程中,第一个任务是选择项目的类型。
对于每种项目类型,VisualStudio都为您设置编译器设置并生成起始代码。
在此演练中的项目中,您将创建一个基本程序,该程序跟踪有多少个玩家正在玩不同的纸牌游戏。
创建项目
1.在“文件”菜单上指向“新建”,再单击“项目”。
2.在“项目类型”区域中,单击“VisualC++”。
然后,在“VisualStudio已安装的模板”窗格中,单击“Win32控制台应用程序”。
3.键入项目名称。
对于此示例,请键入game。
当您创建项目时,VisualStudio会将该项目放入一个解决方案。
默认情况下,解决方案的名称与项目名称相同。
接受该名称。
您可以接受默认位置、键入一个不同的位置或者浏览到要保存项目的目录。
单击“确定”启动“Win32应用程序向导”。
4.在“Win32应用程序向导”的“概述”页上,单击“下一步”。
5.在“应用程序类型”下的“应用程序设置”页,选择“控制台应用程序”。
在“附加选项”下选择“空项目”设置。
单击“完成”。
现在有了项目,但项目还没有源代码文件。
使用解决方案资源管理器
“解决方案资源管理器”可帮助您使用解决方案中的文件和其他资源。
在本节中,您将向项目中添加一个类,并且 VisualStudio将添加.h和 .cpp文件。
然后,为测试类的主程序向项目添加一个新的源代码文件。
向项目添加类
1.如果未显示“解决方案资源管理器”,请在“视图”菜单上,单击“解决方案资源管理器”。
2.在“解决方案资源管理器”中,右击“头文件”文件夹,指向“添加”,然后单击“类”。
在“Visual C++”类别中,单击“C++”,在“VisualStudio已安装的模板”区域中单击“C++ 类”,然后单击“添加”。
3.在“一般C++类向导”中,键入Cardgame作为“类名”,并接受默认的文件名和设置。
4.对已在编辑区域中打开的 Cardgame.h文件进行以下更改:
∙在类定义的左大括号之后添加两个私有数据成员。
intplayers;
staticinttotalparticipants;
∙添加一个采用类型为int的参数之一的公共构造函数原型。
Cardgame(int p);
∙删除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>
usingnamespace std;
8.为采用一个int参数的构造函数添加代码。
Cardgame:
:
Cardgame(intp)
{
players = p;
totalparticipants+=p;
cout <
<
p<
"
playershave startedanewgame.There arenow "
<
totalparticipants<
<"
playersintotal."
<
endl;
}
开始键入 pl或to时,可以按 Ctrl+空格键,以便自动完成功能将为您完成键入players或totalparticipants的操作。
9.删除Visual Studio生成的以下默认构造函数。
Cardgame:
Cardgame(void);
10.在您对Cardgame.cpp文件进行更改之后,该文件应类似于:
#include"
Cardgame.h"
#include<
iostream>
using namespacestd;
Cardgame:
Cardgame(intp)
players=p;
totalparticipants+=p;
cout<
p<
playershavestarted anewgame.Therearenow"
<<
totalparticipants<
playersintotal."
endl;
Cardgame:
~Cardgame(void)
}
有关 #include的更多信息,请参见The#include Directive。
添加源文件
现在,为测试类的主程序添加一个源代码文件。
添加新源文件
1.在“解决方案资源管理器”中,右击“源文件”文件夹,指向“添加”,然后单击“新建项”。
在“Visual C++”类别中,选择“代码”,然后单击“C++文件(.cpp)”。
2.键入testgames作为名称,然后单击“添加”。
3.在testgames.cpp编辑窗口中,键入以下代码。
#include "
Cardgame.h"
intCardgame:
totalparticipants=0;
intmain()
Cardgame *bridge=0;
Cardgame *blackjack=0;
Cardgame*solitaire = 0;
Cardgame*poker=0;
bridge =newCardgame(4);
blackjack=newCardgame(8);
solitaire=new Cardgame(1);
deleteblackjack;
deletebridge;
poker=newCardgame(5);
deletesolitaire;
deletepoker;
return0;
有关此源文件中的C++关键字的信息,请参见 new Operator(C++)和deleteOperator(C++)。
4.在“生成”菜单上,单击“生成解决方案”。
来自生成的输出应显示在“输出”窗口中。
这表示项目已编译,并且未发生错误。
如果未显示输出,请将您的代码与前面步骤中提供的代码进行比较。
生成项目(C++)
在本步骤中,您将故意在代码中引入一个Visual C++语法错误,以了解什么是编译错误,以及如何修复它。
编译项目时,会显示错误消息以指示所发生的问题的性质和位置。
使用 IDE修复编译错误
1.在testgames.cpp中,删除最后一行中的分号,使代码如下所示:
return0
2.在“生成”菜单上,单击“生成解决方案”。
3.“输出”窗口中显示一条消息,指示生成项目失败。
单击“输出”窗口中的“转到下一条消息”按钮(指向右方的绿色箭头)。
“输出”窗口中的错误消息和状态栏区域指示右大括号前缺少一个分号。
若要查看有关错误的更多帮助信息,请突出显示错误,并按F1 键。
4.将分号重新添加到导致语法错误的行的末尾:
return 0;
5.在“生成”菜单上,单击“生成解决方案”。
“输出”窗口中显示一条消息,指示项目已正确编译。
演练:
测试项目(C++)
以“调试”模式运行程序使您可以使用断点来暂停程序,以检查变量和对象的状态。
在本步骤中,您将在程序运行时观察变量的值,并推断为什么值与预期的不同。
以“调试”模式运行程序
1.如果“testgames.cpp”文件不可见,请在编辑区域中单击该文件对应的选项卡。
2.单击以下行,将其设置为编辑器中的当前行:
solitaire=newCardgame
(1);
3.若要在该行上设置断点,请单击“调试”菜单上的“切换断点”,或者按 F9。
也可以单击代码行左侧的区域来设置或清除断点。
设置了断点的代码行的左侧会显示一个红色圆圈。
4.在“调试”菜单上,单击“开始调试”,或者按F5。
当程序运行到包含断点的行时,执行将暂时停止(因为程序处于“中断”模式)。
代码行左侧的黄色箭头指示该行是要执行的下一个代码行。
5.若要检查Cardgame:
:
totalparticipants 变量的值,请将鼠标指针悬停在该变量上方。
该变量的名称及其值12即显示在工具提示窗口中。
右击Cardgame:
totalparticipants 变量。
选择“表达式:
‘totalparticipants’”,并单击“添加监视”以在“监视”窗口中显示该变量。
您也可以选择该变量并将其拖动到“监视”窗口。
6.在“调试”菜单上,单击“逐过程”,或者按F10步进到下一行代码。
Cardgame:
totalparticipants的值现在显示为13。
7.右击main 方法的最后一行 (return0;
),并单击“运行到光标处”。
代码左侧的黄色箭头指向要执行的下一个语句。
8.在Cardgame终止时,Cardgame:
totalparticipants 数应当减小。
此时,Cardgame:
totalparticipants应当等于 0,这是因为所有的Cardgame指针都已删除,但是“监视 1”窗口指示Cardgame:
totalparticipants等于18。
代码中存在一个bug,您将在下一节中检测并修复它。
9.在“调试”菜单上,单击“停止调试”或者按Shift-F5停止程序。
调试项目(C++)
在本步骤中,您将修改程序以修复在测试项目时发现的问题。
修复包含 bug 的程序
1.若要明白在Cardgame对象销毁时会发生什么,请查看Cardgame类的析构函数。
在“视图”菜单上,单击“类视图”,或者单击