随笔分类 - C/C++
摘要:在multimap中,同一个键关联的元素必然相邻存放。基于这个事实,就可以将某个键对应的值一一输出。 1、使用find和count函数。count函数求出某个键出现的次数,find函数返回一个迭代器,指向第一个拥有正在查找的键的实例。 2、使用lower_bound(key)和upper_bound
阅读全文
摘要:cin.getline()函数是处理数组字符串的,其原型为cin.getline(char * , int),第一个参数为一个char指针,第二个参数为数组字符串长度。 getline(cin,str)函数是处理string类的函数。第二个参数为string类型的变量。 注:getline(cin,
阅读全文
摘要:记录下自己掌握不清楚的概念和用法... Day 1 Day 2 Day 3 Day 4 Day 5 Day 6
阅读全文
摘要:转自:堆和栈的区别(转过无数次的文章) 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap)— 一般由程序员分配释放, 若程序员不
阅读全文
摘要:转自:c++ 虚函数的实现机制:笔记 1、c++实现多态的方法 其实很多人都知道,虚函数在c++中的实现机制就是用虚表和虚指针,但是具体是怎样的呢?从more effecive c++其中一篇文章里面可以知道:是每个类用了一个虚表,每个类的对象用了一个虚指针。具体的用法如下: 因为A有virtual
阅读全文
摘要:转自:http://www.cnblogs.com/CXCXCXC/p/4641812.html 快速幂这个东西比较好理解,但实现起来到不老好办,记了几次老是忘,今天把它系统的总结一下防止忘记。 首先,快速幂的目的就是做到快速求幂,假设我们要求a^b,按照朴素算法就是把a连乘b次,这样一来时间复杂度
阅读全文
摘要:转自:http://www.cnblogs.com/Romi/archive/2012/01/10/2317898.html 这两个名字不同当然所代表的意思也就不同。我刚开始看到这就吓到了,主要是中文太博大精深了,整这样的简称太专业了,把人都绕晕了。从英文解释或中文全称看就比较容易理解。 指针数组:
阅读全文
摘要:const在C语言中算是一个比较新的描述符,我们称之为常量修饰符,意即其所修饰的对象为常量(immutable)。 我们来分情况看语法上它该如何被使用。 1、函数体内修饰局部变量。例:void func() { const int a = 0;} 首先,我们先把const这个单词忽略不看,那么a是一
阅读全文
摘要:转自:http://www.cnblogs.com/dongsheng/p/3343939.html 一、纯虚函数定义 纯虚函数是在基类中声明的虚函数,它在基类中没有定义,但要求任何派生类都要定义自己的实现方法。在基类中实现纯虚函数的方法是在函数原型后加“= 0”二、引入原因 1、为了方便使用多态特
阅读全文
摘要:转自:http://blog.csdn.net/yby4769250/article/details/7294696 在标准C和C++中0长数组如charArray[0]是不允许使用的,因为这从语义逻辑上看,是完全没有意义的。 但是,GUN中却允许使用,而且,很多时候,应用在了变长结构体中,如: s
阅读全文
摘要:1. 解析: A:在GCC下输出:0 在VC6.0下输出:1 B:在GCC下输出:段错误 (核心已转储) 在VC6.0下输出:已停止工作,出现了一个问题,导致程序停止正常工作。 C:正常 D:在GCC下输出:-1 0 在VC6.0下输出:0 0 2.运行下面这段代码,会出现的情况是: void Ge
阅读全文
摘要:1. 答案:A 这里考查转义字符,注意 \\ 表示字符 \\123表示字符 {\t 表示制表符这些都是一个字符。 2. 答案C 先不看有没有重复的,共5个字母,有5×4×3×2×1 = 120种组合. 然后有两个重复的i,所以应该除以2,120 / 2 = 60,所以答案C 3. 答案:n ( n
阅读全文
摘要:64位操作系统,不同类型变量对应的字节数为: char : 1个字节 char*(即指针变量) : 8个字节 //32位占4个字节 short int : 2个字节 int : 4个字节 unsigned int : 4个字节 float : 4个字节 double : 8个字节 long : 8个
阅读全文
摘要:正确答案:D 解析: C语言中变量以补码形式存放在内存中,正数的补码与原码相同,负数求补码方式为(符号位不变,其余各位取反,最后末尾加1); 32位机器:int 32位,short 16位。 x = 127,正数,原码:0111 1111,补码:0111 1111,扩展到32位高位补0,结果为000
阅读全文
摘要:CSomething a();// 没有创建对象,这里不是使用默认构造函数,而是定义了一个函数,在C++ Primer393页中有说明。 CSomething b(2);//使用一个参数的构造函数,创建了一个对象。 CSomething c[3];//使用无参构造函数,创建了3个对象。 CSomet
阅读全文
摘要:首先来看一下今天做的一道题: 解析: union 维护足够的空间来置放多个数据成员中的“一种”,而不是为每一个数据成员配置空间,在union 中所有的数据成员共用一个空间,同一时间只能储存其中一个数据成员,所有的数据成员具有相同的起始地址。 一个union 只配置一个足够大的空间以来容纳最大长度的数
阅读全文
摘要:函数模板的格式: 类模板的格式为:
阅读全文
摘要:A 友元函数: 友元函数是可以直接访问类的私有成员的非成员函数。它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字friend,其格式如下: friend 类型 函数名(形式参数); 1.友元函数的声明可以放在类的私有部分,也可以放在公有部分,它
阅读全文
摘要:转自:http://blog.csdn.net/gyymen/article/details/4962873 首先介绍一下C++中的结构。对于一个结构: 如果有个变量MyStruct s,那么使用其中的成员元素时可以用: 如果采用指针方法访问,比如MyStruct * ps,那么同样的访问就必须使用
阅读全文
摘要:转自:http://blog.csdn.net/xt_xiaotian/article/details/5714477 一、简介 由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程
阅读全文