昨天偶然看到翁惠玉老师的《C++程序设计思想与方法(第2 版)》。心里总是不平静。以前看C#,看JAVA,太浮躁了。但生活是要沉下去才能品味的到的。今天开始学C++,也正式开始写博客。每天把看的心得,问题都记录下来吧。
今天首先碰到一个问题:用什么IDE?网上推荐的一个没用,
我选择了微软的 Visual C++ Express 2010 学习版。这个软件界面和VS几乎一模一样,但创建项目的过程,包括提示信息却是和以前的VC 6.0一模一样!如果你学过C,用过VC或VS,那对这款工具,你会比较容易上手。最重要的是:免费!
一、学习过程
好了。安装好IDE,打开,选择“文件》》新建》》项目》》Win 32 控制台应用程序”。在这里,我不知道为什么只有选择“Win 32 控制台应用程序”才能输出:Hello World。留待以后慢慢明白吧。
第一个程序永远都是经典的“Hello World!”我用F5键来调试,但窗口一闪而过,提示信息是:
“HelloWorld.exe”: 已加载“C:\Windows\System32\ntdll.dll”,Cannot find or open the PDB file
“HelloWorld.exe”: 已加载“C:\Windows\System32\kernel32.dll”,Cannot find or open the PDB file
“HelloWorld.exe”: 已加载“C:\Windows\System32\KernelBase.dll”,Cannot find or open the PDB file
“HelloWorld.exe”: 已加载“C:\Windows\System32\msvcp100d.dll”,已加载符号。
“HelloWorld.exe”: 已加载“C:\Windows\System32\msvcr100d.dll”,已加载符号。
程序“[5272] HelloWorld.exe: 本机”已退出,返回值为 0 (0x0)。
感觉很莫名奇妙。
查了一下资料,原因是:程序输出的地方是系统而不是vs2010。你所点的按钮(或者按快捷键F5)的结果是启动调试。你所想要执行的命令是开始执行(不调试)。
解决办法:调试时不再用F5键,改成Ctrl+F5键。详细说明:
http://blog.163.com/chenpeijie0_0/blog/static/1830945712011780275118/。
二、学习总结
C++的语法格式很奇怪(相对于C,C#和JAVA而言)。需要小心的编码。而且像cout、cin之类的常用关键字竟然没有亮色?!很容易写错的。
1、cout是标准的输出流对象,和它对应的设备是显示器。《 称之为流插入运算符,表示将其后的数据插入该流对象中。
2、endl表示换行(类似/ n吧)。
3、cin是输入对象,与之关联的是键盘,当从键盘输入时,形成一个输入流。流提取运算符 》将数据存储到一个事先定义好的变量中(就是》运算符后边的变量)。
4、iostream是C++提供的标准输入/输出库。cout、cin都是输入/输出流库的一部分。程序中所有的数据的输入/输出都要有该库提供的功能完成。
5、# include命令有两种格式:# include <文件名>;# include “文件名”。用尖括号标记的是系统的标准库。个人编写的库用引号标记。
分享到:
相关推荐
Cannot find or open the PDB file in VS2010 ...Cannot find or open the PDB file是一个常见的错误信息,可以通过设置系统环境变量、更改项目属性、添加语句、使用断点、调整VS2010设置等方法解决。
总结来说,Windows下使用MinGW生成pdb文件是为了便于调试,尤其是当遇到程序崩溃并生成dmp文件时,pdb文件能够提供关键的符号信息,配合WinDbg等工具,帮助开发者快速定位和解决问题。cv2pdb.exe这样的工具则进一步...
CShell_PDB_C++_ 是一个与游戏"Combat Arms"相关的开发话题,主要涉及的是调试信息文件(PDB,Program Database)以及C++编程语言。PDB文件在软件开发过程中扮演着至关重要的角色,尤其是在调试和优化代码时。让我们...
本问题聚焦于一个特定的错误:“error C2471: cannot update program database 'vc90.pdb'”。这个错误通常发生在编译过程中,涉及到调试信息的存储,即程序数据库(Program Database,PDB)文件无法正确更新。 ...
在C++编程中,处理文件和目录是常见的任务,包括移动文件、复制文件以及创建新的目录。这些操作在很多应用程序中都是必要的,比如数据备份、文件管理器或者系统工具等。接下来,我们将深入探讨如何使用C++来实现这些...
* CREATE OR REPLACE TRIGGER open_pdbs AFTER STARTUP ON DATABASE BEGIN EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE ALL OPEN'; END open_pdbs; 从 PDBSEED 创建 PDB 可以使用以下命令来从 PDBSEED 创建 PDB...
在编程过程中,尤其是在使用Visual C++ (VC++) 进行Windows应用程序开发时,开发者可能会...记住,遇到问题时,耐心和细致的排查总是解决问题的关键。在编程的世界里,没有解决不了的问题,只有还没找到的解决方案。
标题中的"open-image.zip_5566pDB_open"暗示了这是一个与图像处理相关的C++程序,可能是一个用于打开并处理图像的软件工具。"5566pdb"可能是项目或开发者的特定标识,而"open"可能指的是程序的核心功能——打开图像...
标题中的“VS2019”指的是Visual Studio 2019,这是一款由微软开发的集成开发环境(IDE),广泛用于C++编程。它提供了丰富的功能,包括代码编辑、调试、构建工具以及对多种软件开发框架的支持。而“pcl”则代表Point...
标题“reflector:C++ 的反射系统(从PDB文件中提取信息)”指出了一个项目或工具,它利用C++程序的调试信息(Program Database,PDB文件)来构建一个强大的反射系统。PDB文件是Microsoft Visual Studio编译器生成的...
在VS中,pdb文件允许开发者在调试时查看和步进到Qt库的源代码,从而更好地理解和解决问题。 首先,了解Qt框架。Qt是一个跨平台的C++图形用户界面应用程序开发框架,广泛用于创建桌面、移动和嵌入式应用。Qt 5.11.1...
总的来说,这个压缩包提供的PDB文件为使用VS 2017进行C/C++开发的用户提供了宝贵的资源,尤其是在处理崩溃报告或调试生产环境中的问题时。通过合理设置和利用这些符号文件,开发者可以更有效地诊断和修复代码问题,...
1. **面向对象编程**:C++是面向对象的语言,游戏中的每个元素如植物、僵尸、场地等都可以抽象为类,通过继承和多态性实现组件的复用和扩展。例如,可以创建一个基础的`Entity`类,然后派生出`Plant`和`Zombie`子类...
5. 调试辅助:为调试过程提供详细信息,如堆栈跟踪、内存映射等,帮助开发者更快地定位和解决问题。 6. 支持不同版本的PDB:考虑到PDB格式随时间有所演变,该阅读器可能兼容多种版本的PDB文件,确保了广泛的应用性。...
在使用Microsoft Visual C++ 6.0(简称VC6)进行C++项目开发时,有时会遇到链接错误,其中一种常见的错误是“LNK1104:无法打开文件'uafxcwd.lib'”。这个错误通常表明你的工程缺少了特定的库文件,即uafxcwd.lib。...
完美解决VS2003.Net fatal error LNK1201: 写入程序数据库“.pdb”时出错 文末给出一个完美的解决方案和一个懒人补丁包。问题描述如下:在重新编译的时候,经常报错: fatal error LNK1201: 写入程序数据库“.pdb”...
这个压缩包文件名为"C++源代码集合(包含数百程序)",显然,它是一个丰富的C++编程学习资源,其中包含了多个章节的源代码示例。这些章节按照编号排序,可能是按照学习进阶或者主题分类的。让我们逐一探讨这些章节...
根据exe 生成 对应的pdb 文件
- 打开PDB:`ALTER PLUGGABLE DATABASE clone_pdb OPEN;` - 修改参数:`ALTER SYSTEM SET parameter_name=value SCOPE=BOTH;` - 分配SGA资源:`ALTER SYSTEM SET db_cache_size=value FOR CLUSTER;` - 创建或...