vs2008设置
VS2008开发环境下调试VC++程序入门
Vs2008开发环境下调试vc++程序入门一、菜单栏中和调试有关的各菜单选项图1-11、Breakpoints显示程序中所有已加的断点。
2、Start Debugging 开始调试程序,如果程序中没有断点,则一直运行完毕,如果程序中设置有断点,则动行至断点。
3、Attach to Process 附加另一个进程进行调试,此进程可以是其它可执行文件,如果有源程序,可调入源程式调式,如无源程序,对此进程的汇编代码进行调试。
4、Toggle BreakPoint 在一行代码处设置断点,也可直接在一行代码前面的灰条处点一鼠标左键。
即可设置断点,如图1-1左侧小红点就是断点。
再次左键点一下即可取消断点。
5、Step Over进入单步调试,或者快捷键F10。
单步调试是一行行的向前运行,遇到函数不进入函数体内;而另一个快捷键F11也是单步调试,但是遇到函数会进入函数体内运行。
也可以用组合键CTRL+F10运行到光标指定点。
6、Delete All BreakPoints 取消所有的断点7、Disable All BreakPoints 禁用所有的断点,但不取消。
再次点一下菜单命令可恢复。
二、各种调试和变量窗口图2-11、最上面显示的是目前所处的进程和线程名2、左边黄色箭头指明现在调试运行到此处3、右边是调试变量窗口,有三个子窗口Autos窗口,Locals窗口,Watch1窗口,这三个窗口中前二个自动显示黄色箭头运行处的本地变量内容。
而Watch1中可手工输入变量名,系统会自动列出变量的值。
Value栏中的内容是可以修改的,比如图2-1中的循环计数变量m_dwSpinCount值是4000,如果我们调试时进入这个循环,要手工运行4000次,才能退出循环,这太麻烦,此时,可以直接鼠标左键点变量窗口中4000这个值,修改变量值为0次。
继续单步调试程序,退出循环。
当然你也可以在循环外面加一个断点,直接按F5跳出循环到断点处。
Visual Studio 2008基本调试技巧
Байду номын сангаас
加入WriteLine输出语句。
断言的使用
Debug类(命名空间System.Diagnostics) Debug.Assert(表达式,string str)
表达式:“测试条件” str:“提示消息” Debug.Assert(this.textBox1.Text.Length > 0, "输入值为空!"); 在断言中不要调用程序中的方法,避免与程序 发生功能联系。
小结
VS 2008 基本调试技巧 断点设置、调试输出、变量监视、调试堆栈、 逐过程调试、逐语句调试、使用WriteLine方法 来辅助输出调试信息。 断言Debug 测试是调试的入口,重心在于设计输入数据让 特定的问题出现的技巧。 调试不等于测试,调试重心在于修正语法错误 和逻辑错误的过程,重点在于定位问题。
VS 2008 基本调试技巧
断点设置
F9快速断点设置
调试输出
F5调试输出
变量监视
调用堆栈
逐过程调试
在断点处,如果希望继续执行程序,则 可按F5键,程序会运行到下一个断点的 代码行处。 如果要一步步查看程序的执行情况,以 及变量、属性值等,则可按F10键(逐过 程调试的快捷键)。
逐语句调试
VS2008环境配置directshow终极攻略
VS2008环境配置directshow终极攻略第一篇:VS2008环境配置directshow终极攻略帮您安装调试成功VS2008平台下的Directshow 及基于directshow的相关项目基础配置错误解决知识普及:DirectX9.0b(包含b)以下版本才有directshow,自从DirectX9.0c以后就从DirctX中分离了directshow了,所以要用directshow的人要注意,当然你也可以下载安装extras扩展包来弥补这一缺省。
缺少streams.h的解决方法31.编译基类源代码BaseClasses编译生成路径:/Samples/C++/DirectShow/BaseClasses环境:VS2005/VS2008为了正确编译,需修改以下文件:(a)ctlutil.hD:/DXSDK/Samples/C++/DirectShow/BaseClasses/ctlutil.h 编译时提示错误:BaseClasses/ctlutil.h(278): error C4430: 缺少类型说明符假定为int。
注意: C++ 不支持默认 int改://static g_dwLastRefresh = 0;static DWORD g_dwLastRefresh = 0;//lspmodify(c)winutil.cppd:/DXSDK/Samples/C++/DirectShow/BaseClasses/winutil.cp p错误:1>./winutil.cpp(2104): error C2065: “Count”: 未声明的标识符改://for(UINTCount = 0;Count < Result;Count++)UINT Count;//lspmodifyfor(Count = 0;Count < Result;Count++){ //lspmodify(d)outputq.cppd:/DXSDK/Samples/C++/DirectShow/BaseClasses/outputq.c pp错误:1>./outp utq.cpp(664): error C2065: “iDone”: 未声明的标识符改:(这里可能地方与VS报错不一样,需要自己向上找一下)//for(longiDone = 0;long iDone;//lspmodifyfor(iDone = 0;//lspmodify在DirectShow 8.0的SDK里面就看到有下面的头文件,在我装的是9.0的,没有找到这些文件。
配置Visual Studio 2008
配置Visual Studio 2008为了更加方便地在Visual Studio 2008中开发Web应用程序,需要配置Visual Studio 2008开发环境(以Windows 7操作系统为例,并且所有配置均适合Windows Server 2003系统)。
(1)选择"开始"/"程序"/Microsoft Visual Studio 2008/Microsoft Visual Studio 2008命令,如果用户是第一次使用Visual Studio 2008开发环境,弹出如图1.8所示的"选择默认环境设置"对话框。
技巧:用户也可以随时选择使用不同的设置,方法是在Visual Studio 2008开发环境菜单栏中选择"工具"/"导入导出设置"命令,然后启动"导入和导出设置"向导,在其中选择重置所有设置选项即可。
(2)在"工具"菜单栏中选择"选项"命令,弹出"选项"对话框。
在该对话框的左侧导航栏中有"常规"、"环境字体和颜色"、"文本编辑器HTML"和"HTML设计器"命令,如图1.9所示。
技巧:在"选项"对话框默认页中可以选择Visual Studio 2008起始页位置和源视图中显示的项目(如自动列出成员、行号、自动换行)等。
(3)选中"选项"对话框下方的"显示所有设置"复选框,在左侧将显示所有命令,如图1.10所示。
用户可以根据实际需要进行详细设置。
心法领悟001:专业的网站服务器环境。
如果要作为专业网站服务器环境,首选Windows Server 2003或Windows Server 2008系统,该系统是给服务器等级的主机用的,着重于性能、安全及可靠性;反之,教学或学习等用可以选择Windows 7等系统。
vc2008使用教程
visual C++ 2008简单使用教程2009-05-21 17:04创建新项目:在“文件”菜单上,指向“新建”,然后单击“项目”。
在“Visual C++”项目类型中,单击“Win32”,然后单击“Win32 控制台应用程序”。
输入项目名称。
默认情况下,包含项目的解决方案与新项目同名,当然,您也可以键入其他名称。
如果愿意,您可以为项目输入一个不同的位置。
单击“确定”创建新项目。
在“Win32 应用程序向导”中,选择“空项目”并单击“完成”。
如果“解决方案资源管理器”不可见,请单击“视图”菜单上的“解决方案资源管理器”。
向该项目添加新的源文件:在“解决方案资源管理器”中,右击“源文件”文件夹,指向“添加”并单击“新建项”。
单击“代码”节点中的“C++ 文件(.cpp)”,输入一个文件名,然后单击“添加”。
该 .cpp 文件即显示在“解决方案资源管理器”中的“源文件”文件夹中,并且在键入代码的位置,出现一个选项卡式窗口。
在 Visual Studio 中,在新创建的选项卡中单击并键入使用标准 C++ 库的有效 C++ 程序,或者复制并粘贴示例程序之一。
例如,您可以使用 set::find (STL Samples) 示例程序,该程序位于帮助中的“标准模板库示例”主题中。
如果要为此过程使用示例程序,请注意 using namespace std; 指令。
此指令将允许程序使用 cout 和 endl,而无需要求完全限定名(std::cout 和 std::endl)。
在“生成”菜单上,单击“生成解决方案”。
“输出”窗口显示有关编译过程的信息,如生成日志的位置,以及指示生成状态的消息。
在“调试”菜单上,单击“开始执行(不调试)”。
如果使用了示例程序,将显示一个命令窗口,其中显示是否在集合中找到了特定的整数。
vs2008中设置OpenMP
vs2008中设置OpenMP:实验环境:平台为XP,VS2008如何建立Openmp编程环境OpenMP在Windows环境下比较容易实现,只要打开VS2008中的编译选项/openmp,设置一下环境变量OMP_NUM_THREADS就可以了。
一般是新建一个c++项目,以次选择Project-> (alt+f7)属性 -> 配置属性(configuration property) -> c/c++ -> 语言(Language),打开OpenMP支持;设置环境变量:我的电脑 -> 属性 -> 高级 -> 环境变量,新建一个OMP_NUM_THREADS变量,值设为2,即为程序执行的线程数。
至于其它环境变量,在使用的时候我们再设置就可以了,所以暂时不考虑。
这样,就可以进行OpenMP程序设计了。
测试例子1:#include "omp.h"int main(int argc, char* argv[]){#pragma omp parallelfor(;;){int i = 0 ;i++;int y = i;}return 0;}测试例子2:#include <stdio.h>#include <omp.h>int main(){omp_set_num_threads(2);#pragma omp parallelprintf("Hello from Thread NO.%d\n", omp_get_thread_num()); return 0;}程序运行结果为:Hello from Thread NO.0Hello from Thread NO.1。
vs2008常用配置
vs2008常用配置1. 怎样调整代码排版的格式?选择:编辑—>高级—>设置文档的格式或编辑—>高级—>设置选中代码的格式。
格式化cs代码:Ctrl+k+f格式化aspx代码:Ctrl+k+d2. 怎样跳转到指定的某一行?两种方法:Ⅰ. Ctrl+GⅡ. 单击状态栏中的行号3. 怎样创建矩形选区?两种方法:Ⅰ. 摁住alt键,然后拖动鼠标即可。
Ⅱ. 按住Shift+Alt点击矩形的左上和右下位置即可。
4. 怎样快速隐藏或显示当前代码段?Ctrl+M,M5. 怎样快速切换不同的窗口?Ctrl+Tab6. 怎样生成解决方案?Ctrl+Shift+B7. 怎样快速添加代码段?输入prop然后按两次tab即可插入自动属性public int MyProperty { get; set; },(输入try,class,foreach等等,按两次tab也有类似效果。
)8. 怎样调用智能提示?两种方法:Ⅰ. Ctrl+JⅡ. Alt+→9. 怎样调用参数信息提示?光标放到参数名上面,然后输入Ctrl+Shif+空格。
10. 怎样查看代码的详细定义?打开:视图—>代码定义窗口然后你再在页面中把鼠标点到某个方法上。
11. 怎样创建区域以方便代码的阅读?#region代码区域#endregion12. 怎样同时修改多个控件的属性?选中多个控件,然后右键属性,这个时候这些控件共有的属性就会出现,修改之后所有的控件都会变化。
13. 怎样快速添加命名空间?对于引用了dll,但代码中没有引用其命名空间的类,输入类名后在类名上按Ctrl+.即可自动添加该类的引用命名空间语句。
14. 怎样实现快速拷贝或剪切一行?光标只要在某行上,不用选中该行,直接按Ctrl+c 或Ctrl+x 就可以拷贝或剪切该行。
15. 怎样使用任务管理器?假如我们开发的项目很大,在项目中有些代码没有完成,我们可以做一下标记,便于将来查找。
vs2008- wm5.0模拟器网络编程环境搭建
在确保主机已连上互联网的情况下,按以下步骤设置:1、打开ActiveSync ,点击“文件(File)”——>“连接设置(Connection Settings)”,在“允许连接到以下其中一个端口(Allow connections to one of the following)”下选择“DMA”。
选择连接设置选择后界面2,安装微软虚拟机pc2007 ->网上邻居->属性->本地连接->属性(如下图)点确定(2)打开vs2008->工具->选项(如下图)选择后如图点击属性->传输:选TCP连接传输(如下图)选择仿真选项->选择网卡2、在PPC模拟器中,点击“开始(Start)”——>“设置(Settings)”,点击“连接(Connections)”选项卡。
(1)选择“网卡(Network Cards)”:(2)在“连接(Connections)”选项卡中选择“连接(Connections)”:在“高级(Advanced)”选项卡中,点击“选择网络(Select Networks)”,在“在程序自动连接到Internet时,使用:(Programs that automatically connect to the Internet should connect using:)”下面选“单位设置(My Work Network)”,默认是“Internet设置(My ISP)”,然后,连续点击右上角的“ok”,“ok”,“X”返回。
4、此时,就可以上网了。
依次点击“开始(Start)”——>“Internet Explorer”——>“收藏夹(Favorites)”——>“MSN Mobile”,就会出现页面了。
如还打不开网页,可在“设备仿真器管理器(Device Emulator Manager)”中选中该模拟器,先点击右键菜单中的“移除底座(Uncradle)”,再点击“插入底座(Cradle)”,重新与ActiveSync连接一次,就没问题了。
OpenGLVS2008环境配置
OpenGLVS2008环境配置[VS2008具体示例]1,新建工程:菜单-文件-新建-项目-Visual C++-Win32 项目-工程名-确定-空项目-完成。
2,加入源文件:解决方案资源管理器中的源文件点击右键-添加-新建项-C++文件-输入名称-确定-编写代码(可以参考后面的示例代码)。
3,设置连接库:项目-属性(快捷键ALT+F7) -配置属性-连接器-输入-附加依赖项中加入opengl32.lib glu32.lib,注意用空格隔开各*.lib。
4,编译连接运行。
[示例代码]#include <windows.h>#include <gl/gl.h>#include <gl/glu.h>HWND hWnd;HDC hDC;HGLRC hRC;void SetupPixelFormat(){PIXELFORMATDESCRIPTOR pfd,* ppfd;int pixelformat;ppfd=&pfd;ppfd->nSize=sizeof(PIXELFORMATDESCRIPTOR);ppfd->nVersion=1;ppfd->dwFlags=PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER;ppfd->dwLayerMask=PFD_MAIN_PLANE;ppfd->iPixelType=PFD_TYPE_COLORINDEX; ppfd->cColorBits=16;ppfd->cDepthBits=16;ppfd->cAccumBits=0;ppfd->cStencilBits=0;pixelformat=ChoosePixelFormat(hDC,ppfd); SetPixelFormat(hDC,pixelformat,ppfd);}//To init the functionvoid InitGraphics(){hDC=GetDC(hWnd); SetupPixelFormat();hRC=wglCreateContext(hDC); wglMakeCurrent(hDC,hRC); glClearColor(0,0,0,0.5);glClearDepth(1.0);glEnable(GL_DEPTH_TEST);}void ResizeGraphics(){RECT rect;GetClientRect(hWnd,&rect);int width=rect.right;int height=rect.bottom;GLfloat aspect=(GLfloat)width/height; glViewport(0,0,width,height); glMatrixMode(GL_PROJECTION); glLoadIdentity();gluPerspective(45.0,aspect,1.0,100.0);glMatrixMode(GL_MODELVIEW);}void DrawGraphics(){glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);glLoadIdentity();glTranslated(0,0,-10);glBegin(GL_QUADS);glColor3d(1,0,0);glVertex3d(-2,2,0);glVertex3d(2,2,0);glVertex3d(2,-2,0);glVertex3d(-2,-2,0);glEnd();SwapBuffers(hDC);}long WINAPI MainWndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam){switch(uMsg){case WM_SIZE:ResizeGraphics();break;case WM_CLOSE:DestroyWindow(hWnd);break;case WM_DESTROY:PostQuitMessage(0);break;default:return DefWindowProc(hWnd,uMsg,wParam,lParam);}return 1;}int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd){const TCHAR AppName[]=TEXT("OpenGL Sample");WNDCLASS cwnd;MSG msg;cwnd.style=0;cwnd.lpfnWndProc=MainWndProc;cwnd.cbClsExtra=0;cwnd.cbWndExtra=0;cwnd.hInstance=hInstance;cwnd.hIcon=LoadIcon(hInstance,AppName);cwnd.hCursor=LoadCursor(NULL,IDC_ARROW);cwnd.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);cwnd.lpszMenuName=AppName;cwnd.lpszClassName=AppName;if(! RegisterClass(&cwnd))return 1;hWnd=CreateWindow(AppName,AppName,WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,CW_USEDEFAULT,CW_USEDEFAULT,800,600,NULL,NULL,hInstance,NULL);if(! hWnd) return 0;InitGraphics();ShowWindow(hWnd,nShowCmd);UpdateWindow(hWnd);while(1){if(PeekMessage(&msg,NULL,0,0,PM_NOREMOVE)){if(! GetMessage(&msg,NULL,0,0))return true;TranslateMessage(&msg);DispatchMessage(&msg);}DrawGraphics();}wglDeleteContext(hRC);ReleaseDC(hWnd,hDC);return msg.wParam;}另外:openGL有一个glut库能支持更快的开发openGL程序,里面包含了glut.h glut.lib glut.dll glut32.lib glut32.dll下载并安装glut库opengl的glut库GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。
VS2008开发快速配置
VS2008开发快速配置Win32下首先考虑的是Microsoft Visual Studio工具,笔者推荐使用vs2008,目前vs2010、vs2012都已经发布。
不过vs2010的界面布局太过阴暗,而vs2012居然不支持XP。
总而言之,笔者认为vs2008相对成熟,比其它版本的都要好。
在正式配置vs2008再介绍另外两款工具。
第一款工具是Dev-C++,目前版本是4.9.9.2,见下图:如果代码量不多,比方说就几百行的验证小程序,那么用Dev-C++就最合适不过。
第二款工具就是大名鼎鼎的Source Insight,是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C/C++, C#和Java等程序的分析。
Source Insight能分析你的源代码并在你工作的同时动态维护它自己的符号数据库,并自动为你显示有用的上下文信息。
如果你不习惯用vs查阅代码,那么SI应该是个不错的选择。
可惜的是SI目前不支持UTF-8,如果在Linux下源码中含有中文,用SI打开将会是一堆乱码。
解决这个问题其实不难,使用一个小程序将UTF-8的文件转换成GBK即可。
见下图:言归正传,下面开始配置vs2008。
第一设置字体。
使用VC6.0中经典的Fixedsys字体,菜单【工具】-> 【选项】,在弹出的选项对话框中,选择【环境】->【字体和颜色】,如下图:顺便提一下,vs2010中居然没有Fixedsys字体可以选择,多么可惜。
据我所知,在vs2008是不可以调行间距的,而且人家Ultra Edit就可以设置行间距。
第二设置行号。
菜单【工具】-> 【选项】,在弹出的选项对话框中,选择【文本编辑器】->【所有语言】,如下图:下面是添加头文件和库文件路径。
有两种方法,一种是针对vs,这样添加后对所有的项目都是有效的,一种是针对项目的,推荐后一种做法。
先介绍前一种方法:菜单【工具】-> 【选项】,在弹出的选项对话框中,选择【项目和解决方案】->【VC++ 目录】,在对话框左边依次选择【包含文件】即.h头文件,【引用文件】即库文件,【可执行文件】即dll文件。
VS2008基本调试技巧与UT初步
逐语句调试
在调用函数的情况下,逐过程调试将执 行函数,然后跳过函数体。
F11逐语句调试 能够看到函数体内的代码逐句执行的情况。
加入WriteLine输出语句。
断言的使用
Debug类(命名空间System.Diagnostics) Debug.Assert(表达式,string str)
添加单元测试项目
直接在解决方案中添加一个新的项目, 选择项目类型为“测试项目”。
单元测试的基本方法是调用被测试代码 的函数,输入函数的参数值,获取返回 结果,然后与预期的测试结果进行比较, 如果相等则认为测试通过,否则认为测 试不通过。
Assert类的使用
在单元测试中,.NET提供了Assert类,用于验 证指定的功能是否满足条件。
从被测代码直接生成单元测试 添加单元测试项目
从被测代码直接生成单单元测试”选项。
在弹出的“创建单元测试”窗口中选择被测方 法,点击“确定”。
在新界面中输入需要创建的单元测试项目的名 称,然后单击“创建”按钮。
从被测代码直接生成单元测试
VS 2008 基本调试技巧与UT初步
断点设置
F9快速断点设置
调试输出
F5调试输出
变量监视
调用堆栈
逐过程调试
在断点处,如果希望继续执行程序,则 可按F5键,程序会运行到下一个断点的 代码行处。
如果要一步步查看程序的执行情况,以 及变量、属性值等,则可按F10键(逐过 程调试的快捷键)。
表达式:“测试条件” str:“提示消息” Debug.Assert(this.textBox1.Text.Length > 0, "输入值为空!"); 在断言中不要调用程序中的方法,避免与程序 发生功能联系。
vs2008使用教程
VS2008使用教程引言Visual Studio 2008(简称VS2008)是一款功能强大的集成开发环境(IDE),被广泛用于开发各种类型的应用程序,包括桌面应用程序、Web应用程序和移动应用程序等。
本教程将为您介绍如何使用VS2008进行开发,并提供一些常用功能和技巧的使用方法。
安装和设置在使用VS2008之前,您需要先下载并安装它。
您可以从微软官方网站或其他可信的下载源获取安装程序。
安装完成后,您需要进行一些基本设置,以配置和个性化您的开发环境。
1.启动VS2008安装程序,并按照提示进行安装。
2.完成安装后,启动VS2008,您将看到欢迎界面和开始菜单。
3.在设置对话框中,您可以选择默认的编程语言和工作区布局,还可以更改其他个性化设置,例如颜色方案和字体大小等。
创建新项目使用VS2008,您可以创建多种类型的项目,例如控制台应用程序、Windows窗体应用程序、 Web应用程序等。
下面将介绍如何创建一个新的控制台应用程序项目。
1.在VS2008的开始菜单中,选择“新建项目”。
2.在新建项目对话框中,选择“Visual C++”(或其他适当的编程语言)并选择“控制台应用程序”项目模板。
3.输入项目的名称和存放路径,并点击“确定”创建项目。
4.创建完成后,您将看到一个空白的代码文件和一个主函数。
编写代码在VS2008中,您可以使用内置的代码编辑器来编写代码。
编辑器具有很多实用的功能,如语法高亮、自动完成和错误提示等。
1.在新建项目中,打开代码文件(通常是.cpp或.cs文件)。
2.在编辑器中输入您的代码。
VS2008提供了丰富的代码片段和代码模板,可以加快编码速度。
3.保存代码文件,并使用编译器和调试器来验证代码的正确性。
编译和运行在VS2008中,您可以通过点击按钮或使用快捷键来编译和运行您的应用程序。
1.在工具栏上找到“生成”或“调试”按钮。
2.点击“生成”按钮,VS2008将使用选择的编译器编译您的代码。
VS2008应用环境的调试、配置和测试解析
在“工具”-“选项”-“项目和解决方案” -“VC++目录”-“库文件”中,添加:
F:\Program Files\DXSDK\Lib F:\Program Files\DXSDK\Samples\C++\DirectShow\BaseClasses\Debug F:\Program Files\DXSDK\Samples\C++\DirectShow\BaseClasses\Release
在“工具”-“选项”-“项目和解决方案” -“VC++目录”-“包含文件”中,添加:
F:\Program Files\DXSDK\Include F:\Program Files\DXSDK\Samples\C++\Common\include F:\Program Files\DXSDK\Samples\C++\DirectShow\BaseClasses
开发环境的配置
OpenCV在VS2008中的配置
在“工具”-“选项”-“项目和解决方案”- “VC++目录”-“包含文件”中,添加:
F:\Program Files\OpenCV\cv\include F:\Program Files\OpenCV\cxcore\include F:\Program Files\OpenCV\otherlibs\highgui F:\Program Files\OpenCV\cvaux\include F:\Program Files\OpenCV\otherlibs\cvcam\include F:\Program Files\OpenCV\filters\ProxyTrans
2 Visual Stdio 2008简介
VS2008 解决方案的目录结构设置和管理
/tech/devlodoc/C/?page=2VC 2008 解决方案的目录结构设置和管理一个中等规模的解决方案通常都会包含多个项目,其中一些项目产出静态库,一些产出动态库,一些用于单元测试,还有的产出最终的应用程序执行档。
除此以外,根据项目的需求,还会使用一些第三方的库。
所以为解决方案设置一个合理的目录结构,不但可以使得代码管理更井井有条,项目成员之间也更容易相互配合,更重要的是能够使得最终应用程序的安装包制作,源代码打包发布和转移变得十分容易。
解决方案与项目:从VC6之后VC系列就使用解决方案(Solution)来替代原来的工作空间,用于组织和管理多个相关的项目(Project)。
文章首先演示一个虚拟的解决方案和我们期望得到的目录结构,然后使用VC2008的项目设置功能来一步一步达到我们的需求。
虚拟解决方案:该虚拟解决方案名为GMA,包含一个动态链接库项目ChocolateMilk和一个应用程序项目PureMilk,需要使用一个第三方库log4cxx(Apache log4j的C++移植版本,用于日志输出)。
log4cxx是以动态库的方式编译的,所以我们需要它的3样东西,分别是头文件,导入库(log4cxx.lib, log4cxxd.lib)和动态链接库(log4cxx.dll)。
假设我们期望的目录结构如下图:1. GMA是解决方案目录2. PureMilk和ChocolateMilk是项目目录3. Lib目录用于存放导入库或者静态库(包括第三方库和自己的项目)4. Include用于存放第三方库的头文件5. Bin目录存放所有动态链接库和执行档,包括自己的产出和第三方库,区分Release和Debug两个版本。
另外,程序运行过程中需要外部的数据文件和启动时需要的配置文件等等都可放于该目录6. Temp用于存放临时生成文件,其中Compile存放编译器编译时生成的obj文件,Link存放链接器的输出文件。
vs2008 使用技巧
vs2008 使用技巧VS2008是微软开发的一款集成开发环境,提供了丰富的功能和工具来开发和调试应用程序。
本文将介绍一些VS2008的使用技巧,以提高开发效率。
1.快速查找文件:使用快捷键Ctrl + , 可以快速打开一个文件。
通过输入文件名的一部分,VS2008会自动筛选出匹配的文件,并显示在下拉列表中。
这个功能对于查找和导航项目中的大量文件非常有用。
2.智能代码提醒:VS2008内置了强大的智能代码提醒功能,可以根据上下文自动填充代码。
例如,当输入一个对象名后,按下“.”键,VS2008会显示出对象的成员列表,以便你选择和补全代码。
这大大提高了编写代码的速度和准确性。
3.快速重命名:在VS2008中,你可以使用快捷键Ctrl + R,Ctrl + R来快速重命名变量、方法或类名等。
只需将光标定位到要重命名的标识符上,按下快捷键后,VS2008会自动修改所有引用该标识符的地方,避免了手动修改的麻烦。
4.代码折叠:VS2008支持代码折叠功能,可以折叠和展开代码块,以便更好地组织和浏览代码。
只需单击代码左侧的“+”或“-”图标,即可折叠或展开代码块。
这对于浏览大型代码文件或隐藏不需要关注的代码段非常有帮助。
5.调试窗口:VS2008提供了丰富的调试功能,可以帮助我们定位和解决程序中的错误。
在调试模式下,可以通过查看“局部变量”、“自动变量”和“表达式”窗口中的值,来监视变量的实时变化。
还可以设置断点和单步调试等功能,以逐行执行程序并观察代码的运行情况。
6.自动格式化代码:VS2008有一个称为“格式化选择部分”的功能,可以将选中的代码自动格式化为规范化的样式。
只需选中要格式化的代码,然后按下快捷键Ctrl + K, Ctrl + F,VS2008会自动对选中的代码进行排版和缩进,使代码看起来更加整洁和易读。
7.使用插件:VS2008支持第三方插件,可以通过安装插件来扩展其功能。
一些著名的插件如ReSharper、Visual Assist等,在代码编写和重构、代码导航、代码自动补全等方面提供了更强大的功能和工具。
VisualStudio2008技巧
VisualStudio2008技巧1:强大的渐进式搜索操作步骤:1.按Ctrl+I键;2.输入你要搜索的文本。
注意:这时你会看到光标跳至第一个匹配的位置,并高亮显示搜索的文本。
3.再次按下Ctrl+I键,光标将跳至下一个匹配的文本;4.按Ctrl+Shift+I可向后搜索;5.按ESC键停止搜索;评论:这功能比Ctrl+F的搜索不同,灵活快捷,不会弹出一个搜索对话框。
你也可以通过菜单栏的方式来调用这个同能:编辑+高级+渐进式搜索2:选择矩形区域(框式)操作步骤:按下Shift+Alt+方向键评论:这个功能在编辑代码的时候很实用,也可以用“Alt键+鼠标” 来事实现这个功能。
3:显示空白字符操作步骤:菜单方式:编辑+高级+查看空白快捷键:Ctrl+R, Ctrl+W评论:快捷键的设置是根据键盘布局不同有不同,比如键盘布局设置为Visual c#2005 则快捷键为:Ctrl+E, S。
4:全屏模式操作步骤:Visual Studio 有四种窗口布局;1、设计视图-启动vs 后你看到(视图);2、全屏视图-(菜单操作)视图+全屏;3、调试视图-调试时候看到(视图);4、文件视图-运行命令“devenv.exe foo.txt”(后启动的视图);按下快捷键:Shift+ Alt + Enter可以迅速的从其他三种窗口布局切换到全屏模式。
同时在全屏模式下做的定制会在窗口布局切换的时候得以保留,关闭或再次打开IDE 也是如此。
评论:这个保存状态的功能还是挺实用的,不必每次全屏的时候要再次调整了。
5:利用查找组合框查找当前文档操作步骤:1、按下快捷键Ctrl+D 可以定位到查找组合框。
2、按下Enter键搜你查找的字符3、按Shift + Enter键向前定位。
评论:此功能只对当前窗体有效,同时只有键盘映射为默认状态(或vc++6.0)Ctrl+D才有有效6:自定义搜索操作步骤:1、按下快捷键Ctrl+F2、在“查找和替换”对话框中,单击“查找选项”按钮评论:这个功能可以让你的搜索变的更高效更准确7:文档自动换行操作步骤:1、菜单:工具+选项+文本编辑器+所有语言+常规,选择“自动换行”,选中后,你可以选择“显示可视的自动换行标志符号” 。
vs2008工程配置参数
也许你已经习惯了VS默认的工程文件保存路径,但有些人希望工程的源文件和生成文件能按照自己的安排对号入座,方便管理。
例如希望把所有的*.h文件放入include文件夹,.cpp文件放入source文件夹,.lib文件放入lib文件夹,把大量的中间文件丢进TEMP等等。
下面是一个动态链接库的配置:VS2008+SP1首先解决方案配置设置4个(当然这个根据你自己需求,如果库没有用到TCHAR之类的宏,那么一般定义Debug和Release就OK拉。
)DebugReleaseUnicode_DebugUnicode_Release四个配置的公共设置是配置属性->常规->输出目录:$(SolutionDir)Temp\Link\$(ProjectName)\$(ConfigurationName)\配置属性->常规->中间目录:$(SolutionDir)Temp\Compile\$(ProjectName)\$(ConfigurationName)\当编译时候以上文件目录会自动生成。
配置属性->常规->配置类型:这个当然都必须选择一样的啦,这里的示例为动态链接库(.dll)配置属性->连接器->高级->导入库:$(TargetDir)$(TargetName).lib配置属性->生成事件->生成后事件->命令行:copy $(TargetPath) $(ProjectDir)Bin\;copy $(TargetDir)$(TargetName).lib $(ProjectDir)Bin\;copy $(ProjectDir)include\I$(ProjectName).h $(ProjectDir)Bin\;Bin文件夹得自己生成哦。
I$(ProjectName).h这个是接口的头文件了,方便C++调用哈。
如果有def文件,配置属性->连接器->输入->模块定义文件:source/mc_log.def注意def文件中千万别定义LIBRARY,否则所有的lib文件都将导入该定义名的dll文件,会出现几个媳妇抢老公的场面。
vs2008简单调试方法
VS2008简单调试方法程序的错误通常可以分为若干类,语法错误,链接错误,逻辑错误。
语法错误是比较容易查找并且修改的,而且编译给出的提示信息也比较完整,所以容易修改。
链接错误来源很多,常常由于和系统、库函数等方面的原因出错,难以一言蔽之。
最后是逻辑错误,也就是学生在实验课上碰到的难点,因为系统没有给出明确的提示,同学也只是知道运行错误,那么如何找到并修改运行错误就非常重要。
下面以一个实例简单介绍一下调试过程,当然更加深入的还需自己多练习,学习。
该文档所举例子为VS2008,同样适用于VS2005,VC++6。
1 一个实例一个链表的程序,包括主程序Win32_C_Proj.cpp文件,Bucket.h和Bucket.cpp,其中Bucket用链表的方式实现一个容器。
如下分别展示了main函数,bucket的插入元素函数和类的数据定义。
运行结果如下图运行该程序,我们要的结果是1,2,因为是再第一位置插入1,第二位置插入2。
而现在这个程序的输出结果却是2,1,和我们预想的不符合,说明程序设计过程中存在逻辑上的错误,也就是算法设计的问题。
2 初步发现问题接下来第一步就是要发现问题。
程序就那么几句,很明显,我们需要做的第一步就是确定错误的大至位置。
按F10运行程序,运行程序如下:其中1位置是调试常有的工具按钮,2位置的箭头指示的是当前程序运行到的位置。
工具按钮中八个按钮分别是:●继续运行(F5,会运行到下一个断电停止,如果没有断点,则运行到结束)、●停止运行(不结束程序ctrl+shift+F5)、●结束运行(结束程序调试 shift+F5)、●重新启动、●显示下一个语句、●运行到函数内部(如果当前语句是一个函数)(F11)●运行到同层的下一条语句(F10)●跳出当前函数(shift+F11)我们按F10,运行到bucket1.insertElem(2,2),这时候箭头指向该语句,表示该语句前面的语句都运行完成,但是该语句还未运行,显示的监视窗口如下:Bucket1变量展开之后可以看到,它包含size=1,head节点和currentNode。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
这个快捷键在你写结构性代码的时候可是非常有用的噢。你可以先写好一批代码的定义,而不用关心具体的实现。同时又可以让编译器编译通过。
这三个键在查看代码的时候,特别有用。通过F12你可以快速的找到一个函数的定义,通过Ctrl+减号你可以快速的返回到函数的调用处。
Ctrl+Tab、Ctrl+F6、Ctrl+Alt + 向下箭头 (视频查看)
活动文件的3种切换方式,比你用鼠标点击方便一些噢。
Ctrl+K,M 生成方法存根 (视频查看)
基本情况了解了,故事是这样开始的:
某一周日的早晨起床,突然发现鼠标不见了。可能是隔壁家的猫给抓去了。一时情急,没办法,也只能用键盘来启动VSStudio啦。开始->程序 在一个个查找,要是程序太多,嘿嘿,眼睛都找花啦。还在用这么落后的方式启动IDE吗,用快捷键啊。还是默认的,不用设置。如果要设置也就不英雄嘛。如何以最快的方式启动IDE呢?开始->运行->输入“devenv”。就可以直接调用VSStudio了。不错吧,再给你列几个常用的。
首先有两个地方需要注意:
1:工具->自定义->"在屏幕提示中显示快捷键" 需要勾选上,方便记忆快捷键。默认设置就是这样的。
2:工具->导入导出设置。这里是整个VSStudio的环境的默认设置,我下面设计的都是在"C#环境"下的快捷键,如果你发现你所使用的快捷键和我所列举的出入很大,请更改正确的环境。
命令行快速启动
"Inetmgr" IIS管理器,不用到管理里去找了,很快就可以显示IIS管理了
"sqlwb" 快速启动SQL2005企业管理器
"isqlw" 这是SQL2000的我也提供一下吧,这个可以起到SQL2000的查询分析器。
"devenv" 启动相应版本的VS Studio
Ctrl提示透明窗口
这是一个比较有意思的键。VS2005下,当你在调试代码的时候,有时候提示信息会遮挡代码,这个时候你按CTRL可以将提示透明。VS2008这个透明效果,在更多的地方可见了,你不妨自己亲自动手、CTRL + SHIFT + 减号 (视频查看)