![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
jenny6j
这个作者很懒,什么都没留下…
展开
-
VC调试方法大全
一、调试基础调试快捷键F5: 开始调试Shift+F5: 停止调试F10: 调试到下一句,这里是单步跟踪 F11: 调试到下一句,跟进函数内部Shift+F11: 从当前函数中跳出Ctrl+F10: 调试到光标所在位置F9: 设置(取消)断点Alt+F9: 高级断点设置跟踪调试1、 尽量使用快捷键时行调试2、 观察调转载 2013-10-24 18:36:47 · 657 阅读 · 0 评论 -
Struct和Class的区别
C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能。struct能包含成员函数吗? 能!struct能继承吗? 能!!struct能实现多态吗? 能!!! 既然这些它都能实现,那它和class还能有什么区别?最本质的一个区别就是默认的访问控制: 默认的继承访问权限struct是pu转载 2014-09-26 14:37:58 · 695 阅读 · 0 评论 -
typedef的用法
关于typedef的用法总结 不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,以下是引用的内容(红色部分是我转载 2014-08-30 11:37:30 · 379 阅读 · 0 评论 -
c++继承 虚函数 内存分配
书上类继承相关章节到这里就结束了,这里不妨说下C++内存分布结构,我们来看看编译器是怎么处理类成员内存分布的,特别是在继承、虚函数存在的情况下。工欲善其事,必先利其器,我们先用好Visual Studio工具,像下面这样一步一步来: 先选择左侧的C/C++->命令行,然后在其他选项这里写上/d1 reportAllClassLayout,它可以看到转载 2014-08-09 16:51:35 · 856 阅读 · 0 评论 -
C/C++编译链接过程详解
C++学习|举报|字号 订阅有些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicated external simbol的错误信息不知所措(因为这样的错误信息不能定位到某一行)。或者对语言的一些部分不知道为什么要(或者不要)这样那样设计。了解本文之后,或许会有一些答案。 首先看看我们是如转载 2014-08-09 09:41:23 · 581 阅读 · 0 评论 -
使用两个队列实现一个栈
先普及小知识:STL 中栈的使用方法(stack) 基本操作:push(x) 将x加入栈中,即入栈操作pop() 出栈操作(删除栈顶),只是出栈,没有返回值top() 返回第一个元素(栈顶元素)size() 返回栈中的元素个数empty() 当栈为空时,返回 trueSTL 中队列的使用(queue)基本操作:原创 2014-06-20 09:07:11 · 1117 阅读 · 0 评论 -
c++ 运算符的重载
什么是运算符的重载? 运算符与类结合,产生新的含义。 为什么要引入运算符重载? 作用:为了实现类的多态性(多态是指一个函数名有多种含义)怎么实现运算符的重载?方式:类的成员函数 或 友元函数(类外的普通函数)规则:不能重载的运算符有 . 和 .* 和 ?: 和 :: 和 sizeof友元函数和成员函数的使用场合:一般情况下,建议一元运转载 2013-10-23 21:15:46 · 759 阅读 · 0 评论 -
c++ 函数返回引用
一,c++函数的返回分为以下几种情况 1)主函数main的返回值:这里提及一点,返回0表示程序运行成功。2)返回非引用类型:函数的返回值用于初始化在跳用函数出创建的临时对象。用函数返回值初始化临时对象与用实参初始化形参的方法是一样 的。如果返回类型不是引用,在调用函数的地方会将函数返回值复制给临时对象。且其返回值既可以是局部对象,也可以是求解表达式的结果。3)返回引转载 2014-06-19 08:21:36 · 485 阅读 · 0 评论 -
c++ 拷贝构造函数详解
一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plaincopyint a = 100; int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。转载 2014-06-19 07:39:09 · 565 阅读 · 0 评论 -
C++ const详解
1. const的用法:看到const关键字,C++程序员首先想到的可能是const常量。这可不是良好的条件反射。如果只知道用const定义常量,那么相当于把火药仅用于制作鞭炮。const更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体。const是constant的缩写,“恒定不变”的意思。被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。所以转载 2014-07-28 08:53:57 · 5992 阅读 · 0 评论 -
c++中内存的分类及堆和栈的区别
c++中经常操作的内存分为以下几个类别: 1、栈区(stack):由编译器自动分配和释放,存放函数的参数值、局部变量的值等等。其操作方式类似于数据结构中的栈;只要栈的剩余空间大于申请空间,系统就为其提供内存,否则包异常提示栈溢出。在windows下栈是向低地址拓展的数据结构,是一块连续的内存空间,栈顶的地址和栈的最大空间是系统预定好的。。在函数调用时,第一个进栈的是主函数的下一条指令,的地原创 2014-06-30 16:19:27 · 1102 阅读 · 0 评论 -
学以致用一:得到数组的最后一个元素。
如题上,通常的思想是遍历一遍啦,这里有个比较有意思的方法(程序员面试宝典上有相应的题 四版,p78)利用了指向数组的指针来完成:[cpp] view plaincopy// 得到数组的最后一个数 - 使用指向数组的指针来完成 #include int main() { printf(" 得到数组的最后一个原创 2014-06-28 21:29:03 · 2756 阅读 · 0 评论 -
C/C++中static关键字作用总结
1.先来介绍它的第一条也是最重要的一条:隐藏。(static函数,static变量均可)当同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。举例来说明。同时编译两个源文件,一个是a.c,另一个是main.c。//a.cchar a = 'A'; // global variablevoid msg(){转载 2014-06-28 09:41:28 · 580 阅读 · 0 评论 -
c++ 拷贝构造函数
一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a = 100;int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。#include using namespace std;class CExample {pri转载 2013-12-22 17:48:33 · 144 阅读 · 0 评论 -
error PRJ0002 : Error result 31 returned from 'C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\mt.
error PRJ0002 : Error result 31 returned from 'C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\mt.exe'.有时编译会出这个问题,有时又是编译成功的。今天不管怎么清理重新编译都无济于事,后面只好重建个工程重新搞,MLGB,但还是有时成功有时出错。下面有种解决方案,有需要的可原创 2013-12-29 18:24:38 · 7196 阅读 · 0 评论 -
C++ 铪铪铪铪 烫烫烫 屯屯屯
C++ 铪铪铪铪 烫烫烫 屯屯屯2013-09-29 14:44 25人阅读 评论(0)收藏 举报VS中,Debug模式下,对于未初始化的内存:1) 若为栈内存,默认为一连串“烫烫烫”,0xcc2) 若为堆内存,默认为一连串“屯屯屯”,0xcd;内存删除后,默认为一连串“铪铪铪”。转载 2013-10-24 08:47:54 · 4782 阅读 · 0 评论 -
c++ 拷贝构造函数
为什么要引入拷贝构造函数? 作用:创建一个对象的同时,使用一个已经存在的对象给另一个对象赋值 具体来说:它将一个已经定义过对象的数据成员 逐一拷贝给 新对象,而产生两个完全相同的内存拷贝 做比较:拷贝构造函数:对象被创建 + 用一个已经存在的对象进行初始化 拷贝赋值函数:对象已经存在不用创建 +转载 2013-10-23 21:20:29 · 646 阅读 · 0 评论 -
C++_指针悬挂和赋值操作符的重载
指针悬挂:问题:使用new申请的内存内存空间无法访问,也无法释放。原因:直接对指向new申请的存储空间的指针变量进行赋值修改后果:失去了原来的地址,原来的空间无法访问也无法释放,造成内存泄漏 还可能造成同一个内存释放两次容易引起指针悬挂的方式:对象的初始化和对象间赋值容易引起指针悬挂的条件:类中含有指针类型的成员时,使用默认的拷贝构造函数和赋值函数都会转载 2013-10-23 21:18:40 · 902 阅读 · 0 评论 -
用BOOST_FOREACH简化遍历操作
BOOST_FOREACH可以方便的遍历STL容器.只需要头文件:#include 然后遍历容器vector/list/set/deque/stack/queue都是类似的:vectorint32_t> _v;BOOST_FOREACH(int32_t value,_v){//这里就可以访问value}同时元素还支持引用,const,比如原创 2014-11-04 10:39:14 · 2263 阅读 · 0 评论