随笔分类 - C/C++
摘要:几个相似而不完全相同的的对象,有时人们要求在向他们发出同一个消息时,他们的反应各不相同,分别执行不同的操作,这种情况就是多态现象。 例如windows环境下,鼠标双击一个对象(这就是向对象传递一个消息),如果对象是一个可执行文件,则会执行此程序,如果对象是一个文本文件,则会启动文本编辑器并打开该文件
阅读全文
摘要:类的继承,是新的类从已有的类那里得到已有的特性,或从已有的类产生新类的过程。原有类称为基类或父类,产生的新类成为派生类或子类 关系定性: is-a:属于关系,例如狗属于一种动物,车属于一种交通工具,在面向对象中表现为继承关系。可以设计一个Animal类,Dog类作为Animal类的子类(派生类)。
阅读全文
摘要:函数原型: # include <stdio.h>int printf(const char *format, ...); 四种格式: 1) printf("字符串\n"); # include <stdio.h> int main(void) { printf("Hello World!\n");
阅读全文
摘要:C++ STL 全名标准模板库,是一套 C++ 模板类,提供了通用的模板类和函数,些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。 六大组件: 容器(Containers):容器是用来管理某一类对象的集合。C++ 提供了各种不同类型的容器,比如 deque、list、v
阅读全文
摘要:原函数声明: void add(int a, int b){ cout << a + b << endl; } 用一个指针把函数名替换,得到函数指针 void (*p1)(int a, int b);//函数void add(int a,int b)的函数名add就是函数的地址。将地址add赋值给指
阅读全文
摘要:常量指针 又叫常指针,可以理解为常量的指针,指向的是个常量 常量指针指向的对象不能通过这个指针来修改,可是仍然可以通过原来的声明修改; 常量指针可以被赋值为变量的地址,之所以叫常量指针,是限制了通过这个指针修改变量的值; 指针还可以指向别处,因为指针本身只是个变量,可以指向任意地址; int con
阅读全文
摘要:写入到文本文件中 文本I/O cout 必须包含头文件iostream 头文件iostream定义了一个用于处理输出的ostream类 iostream声明了一个名为cout的ostream变量(对象) 必须指明名称空间std; 可以结合使用cout和运算符<<来显示各种类型的数据。 文件I/O与其
阅读全文
摘要:switch(expression) { case constant-expression : statement(s); break; // 可选的 case constant-expression : statement(s); break; // 可选的 // 您可以有任意数量的 case 语
阅读全文
摘要:1.return 语句的作用 (1) return 从当前的方法中退出,返回到该调用的方法的语句处,继续执行。 (2) return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致。 (3) return后面也可以不带参数,不带参数就是返回空,其实主要目的就是用于
阅读全文
摘要:有while ,for,do....while while while 表达式是顶部驱动(top-driven)的循环:先计算循环条件(也就是控制表达式)。如果为 true,就执行循环体,然后再次计算控制表达式。如果控制表达式为 false,程序跳过循环体,而去执行循环体后面的语句。 for for
阅读全文
摘要:vector vector 是向量类型,它可以容纳许多类型的数据,如若干个整数,所以称其为容器 vector自动使用new和delete来管理内存。 使用方法: 1.首先要包含头文件#include<vector> 2.vector包含在名称空间std中 3.模板使用不同的语法来指出他存储的数据类型
阅读全文
摘要:根据用于分配内存的方法,C++有三种管理数据内存的方法 :自动存储,静态存储,动态存储。 C++11新增线程存储 1.自动存储 函数内部定义的常规变量使用自动存储空间,被称为自动变量。这意味着他们在所属函数被调用时自动产生,在该函数结束时消亡。 自动变量是一个局部变量,作用域为包含它的代码块,代码块
阅读全文
摘要:C动态内存分配:malloc / realloc / calloc 1)void *malloc( size_t size ); malloc的参数是用户所需内存空间大小的字节数,不会对申请成功的内存初始化。 malloc 申请空间时并不是需要多少就申请多少,而是会多申请一些空间: a.多申请一个3
阅读全文
摘要:union是一种数据格式,它能够存储不同的数据类型,但只能同时存储其中的一种类型。 union one4all { int int_val; lnog long_val; double double_val; } 可以使用one4all变量来存储int,long或double,条件是在不同的时间进行
阅读全文
摘要:this是一个const指针,存的是当前对象的地址,指向当前对象,通过this指针可以访问类中的所有成员。 1)每个对象都有this指针,通过this来访问自己的地址。 2)每个成员函数都有一个指针形参(构造函数没有这个形参),名字固定,称为this指针,this是隐式的。 3)编译器在编译时会自动
阅读全文
摘要:基本运算符主要分为以下五类: 1)算术运算符 加(+),减(-),乘(*),除(/),取余运算(%),自增(++),自减(--)。 自增,自减 又分前缀自增,后缀自增 a++先执行表达式再自增,执行表达式时使用的是a的原值 ++a先自增再执行表达式,执行表达式使用的是自增后的a 2)关系运算符 相等
阅读全文
摘要:auto 存储类 通俗地讲,auto关键字可以自动推导变量类型的 auto不是一个类型的“声明”,而是一个“占位符”,编译器在编译期会将auto替换为变量实际的类型,使用auto定义变量时必须对其进行初始化 注意: 1.用auto声明指针类型时,用auto和auto*没有任何区别 2.当在同一行声明
阅读全文
摘要:枚举数据类型是一种由程序员定义的数据类型,其合法值是与它们关联的一组命名整数常量。 之所以被称为枚举类型,就是因为命名常量是作为数据类型定义的一部分而枚举或列出的 enum <类型名> {<枚举常量表>}; 关键字enum:说明接下来定义的是一个枚举类型。 类型名字:指明此处定义的枚举类型的名字。
阅读全文
摘要:用途一: 定义一种类型的别名,而不只是简单的宏替换,可以用作同时声明指针型的多个对象typedef char* PCHAR; // 一般用大写PCHAR pa, pb; // 可行,同时声明了两个指向字符变量的指针 用途二:用在旧的C的代码中(具体多旧没有查),帮助struct,以前的代码中,声明s
阅读全文
摘要:全局变量、静态全局变量和静态局部变量都存放在内存的静态存储区域,局部变量存放在内存的栈区 在程序中,局部变量和全局变量的名称可以相同,但是在函数内,局部变量的值会覆盖全局变量的值。 按作用域分: 1).全局变量:在整个工程文件内都有效 2).静态全局变量:只在定义它的文件内有效,效果和全局变量一样,
阅读全文
浙公网安备 33010602011771号