c++基础
文章平均质量分 71
HNFXS985
这个作者很懒,什么都没留下…
展开
-
c++基础---之C++移位运算符
前言:移位运算符可以把整型变量中的内容向左或向右移动指定的位数。移位运算符和其他按位运算符一起使用,可以获得前面描述的结果。>>运算符把位向右移动,所有的按位操作都可以处理任何类型的整数,但本章的例子使用16位的变量,使例子较为简单。用下面的语句声明并初始化一个变量number:unsigned short number=16387U;不带符号的字面量应在数字的最后添加字母U或u。原创 2013-05-29 16:25:05 · 2411 阅读 · 0 评论 -
你写的C语言代码在内存里是如何布局的?
一个程序本质上都是由 BSS 段、data段、text段三个组成的。这样的概念在当前的计算机程序设计中是很重要的一个基本概念,而且在嵌入式系统的设计中也非常重要,牵涉到嵌入式系统运行时的内存大小分配,存储单元占用空间大小的问题。BSS段:在采用段式内存管理的架构中,BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。BSS是英文Block St转载 2014-08-22 20:42:21 · 748 阅读 · 0 评论 -
C/C++ 函数指针与类函数指针【简单实用】
函数指针简单实用示例:int numAdd(int a, int b) { return a+b; } int numMinus(int a, int b) { return a-b; } 直接定义一个函数指针int (*funcTwo)(int, int) = numAdd; 先typedef后使用typedef int (*PtrFunc原创 2014-04-08 16:48:22 · 949 阅读 · 0 评论 -
c++基础---C++之运算符重载
C++之运算符重载(1)参考自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/12/2136598.html 在“C++之多态性与虚函数”一节中曾提到过,C++中运行时的多态性主要是通过虚函数来实现的,而编译时的多态性是由函数重载和运算符重载来实现的。这一系列我将主要讲解C++中有关运算符重载方面的内容。在每一个系列讲解之前原创 2013-05-27 15:13:21 · 823 阅读 · 0 评论 -
c++基础---C++之多态性与虚函数
转自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/11/2134673.html 面向对象程序设计中的多态性是指向不同的对象发送同一个消息,不同对象对应同一消息产生不同行为。在程序中消息就是调用函数,不同的行为就是指不同的实现方法,即执行不同的函数体。也可以这样说就是实现了“一个接口,多种方法”。 从实现的角度来讲,多态可以分为两类:原创 2013-05-27 15:52:27 · 807 阅读 · 0 评论 -
c++基础---C++之模板
转自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/15/2138705.html 有以下这样3个求加法的函数: 1 int Add(int x,int y) 2 { 3 return x+y; 4 } 5 6 double Add(double x,double y) 7 { 8 return原创 2013-05-27 16:13:01 · 629 阅读 · 0 评论 -
c++基础---之C语言运算符优先级及结合性
转自:http://blog.csdn.net/hunter8777/article/details/5888315今天去翻了下C语言运算符的优先级和结合性,发现当初学习的时候就没认真记住,惭愧。发现一篇讲得不错的文章,编辑了下转来供以后翻阅。C语言运算符优先级表(由上至下,优先级依次递减)运算符结合性() [] -> .转载 2013-05-29 15:38:42 · 1073 阅读 · 0 评论 -
c++基础---C++宏定义详解
转自:http://blog.chinaunix.net/uid-21372424-id-119797.html一、#define的基本用法 #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能 理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不转载 2013-04-01 15:40:39 · 797 阅读 · 0 评论 -
c++基础---之编译器为C++ 空类自动生成的东西有哪些
在下列四种函数没有显式声明时,编译器将会自动生成:(1)缺省构造函数;(2)缺省拷贝构造函数;(3)缺省析构函数;(4)缺省赋值运算符;(5)缺省取址运算符;(6)缺省取址运算符 const原创 2013-05-29 15:15:15 · 669 阅读 · 0 评论 -
c++基础---之*运算符和&运算符
首先说一下:&运算符的返回结果是个右值,而*运算符的返回结果是个左值(假设p是指向变量a的指针,则*p返回的是变量a而不要老错误的理解返回的是变量a的内容)。其次,&运算符和*运算符的运算目标必须都是个变量,不能出现*(2048)或&(2048)之类的语句,因为编译不通过。例子如下:#include int main(int argc, char* argv[]){ int原创 2013-05-30 14:38:45 · 979 阅读 · 0 评论 -
c++基础---c/c++编程-内存分配5大区(总结)
一、栈区(stack):由编译器自动分配和释放,存放函数的参数值、局部变量的值等。其操作方式类似于数据结构中的栈。二、堆区(heap):一般由程序员分配和释放,若程序员不释放,程序结束时可能由操作系统回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。三、全局区(又叫静态区)(static):全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全原创 2013-05-05 18:55:27 · 1157 阅读 · 0 评论 -
c++基础---C++之Static
C++Static用法总结一1.生命周期问题:static变量在固定的内存区域进行存储分配,变量生命期一直到程序运行结束。而普通变量:局部变量和全局变量的存储分配在不同的地方进行,局部变量是在堆栈里面存储分配,变量生命周期随着函数的退出而结束;全局变量是在静态存储区存储分配(跟static变量一样)。2.可见性问题:一个类里面的static变量在类外是不可见的;函数内部的static变量在原创 2013-05-29 14:53:49 · 757 阅读 · 0 评论 -
C++软件开发规范
这个编程规范是我们自己做项目时,根据google c++编程规范改写的,适合小型项目使用,给大家分享一下。头文件 通常,每一个.cc文件(C++的源文件)都有一个对应的.h文件(头文件),也有一些例外,如单元测试代码和只包含main()的.cc文件。 1. #define保护 所有头文件都应该使用#define防止头文件被多重包含(multiple incl转载 2017-08-27 11:30:17 · 922 阅读 · 0 评论