C/C++知识大纲(只有作者看得懂的笔记)
c标准库部分冷门函数。
stdio.h char buf[256];
sscanf(buf,"%s",&buf);
sprintf(buf,"Name: %s","xxx");
math.h ceil()向下取整,floor()向上取整
time.h 获取系统时间
struct tm * localtime(const time_t *tod); //将“秒”纸转成“年月日时
time_t mktime(struct tm *tptr); //将“年月日时分秒”转成“
time_t time(time_t * tod); //取得当前时间
struct tm
{
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_ydat;
}

time_t now=time(0); //获取系统;
/*计数毫秒级时间*/
time_t start = time(NULL);
for(i=0;i<10000;i++)
{
//...
}
time_t end =time(NULL);
int avg =(end-start)/10000;
stdlib.h
double atof(const char *s);
int atoi(const char *s);
int rand(void);
void srand(unsigned int seed);
int system(const char *s);
string.h
memcpy(dst,scr,n);从src复制n个字节到dst, memcmp(a,b,n);比较n个字节的内容。memmove(dst,src,n)移动数据。
文件操作;
FILE *fopen(const char *filename,const char *mode);
int fclose(FILE *stream);
size_t fwrite(const void *buf ,size_t size,size_t nelem,FILE * stream);
size_t fread(const void *buf ,size_t size,size_t nelem,FILE * stream);
fprintf(); fgets();
fseek(fp,n,str); n跳到100个字节,SEEK_SET(跳到第n个位置)
SEEK_END(跳到第n个位置)SEEK_CUR(跳到当前前n个位置)SEEK_CUR(跳到当前后n个位置)
面向对象OO思想:
1,类与对象,类的封装特性public,private,protect。
2,this指针。
3,类的分离式写法
class Object
{
public:
int x;
void Test();
}
void Object::Test(){printf(".........");}
4,*const对象与const 函数
void Test()const{ ... }
void Test(){ ... } const对应参数列表const否则报错
5,构造与折构
构造初始化特殊写法。
Circle::Circle():x(0),y(0),radius(1);
6,动态创建对象new delete ,对比malloc与free多了初始化
7,继承
class Base
{
protected:
void test(){}
};
class child:public base
{
public:
void test(){}
};
子类继承父类,public可被继承,private不可继承,protect在不继承的情况同private,可继承被公有继承
8,虚拟继承

9,当子类继承与父类,子类对象构造时,先调用父类构造函数,之后调用自己的构造函数。折构过程相反。
10,多继承,子类继承多个父类。
11,继承函数与纯虚函数,c++纯虚函数实现设计模式中的接口,地位等同java的interface,c的回掉机制。总是被子类继承。
用于声明在子类完成这些接口。
12,保护继承,私有继承。
13,拷贝构造函数。默认拷贝/深度拷贝
14,static定义全局变量和函数
static在类中声明变量与普通全局声明相同。类外定义域普通全局变量定义一样;
static声明全局函数同上,无this指针,
15,友元,class A{ friend void fun () ;friend class} ;
B是A的友元,B可访问A,A不可访问B,友元关系单向
16,多态,运算符重载。
17,内部类(避免类名冲突),命名空间
namespace ID{ }
C/C++知识大纲(只有作者看得懂的笔记)的更多相关文章
- [转帖]linux基础知识大纲
linux基础知识大纲 https://blog.csdn.net/CSDN___LYY/article/details/80810403 1.Linux操作系统概述Linux操作系统的发展过程.创始 ...
- java核心-多线程(1)-知识大纲
Thread,整理一份多线程知识大纲,大写意 1.概念介绍 线程 进程 并发 2.基础知识介绍 Java线程类 Thread 静态方法&实例方法 Runnable Callable Futur ...
- Web端即时通讯基础知识补课:一文搞懂跨域的所有问题!
本文原作者: Wizey,作者博客:http://wenshixin.gitee.io,即时通讯网收录时有改动,感谢原作者的无私分享. 1.引言 典型的Web端即时通讯技术应用场景,主要有以下两种形式 ...
- 一看就懂的Android APP开发入门教程
一看就懂的Android APP开发入门教程 作者: 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤 ...
- 【算法】变邻域搜索算法(Variable Neighborhood Search,VNS)超详细一看就懂的解析
更多精彩尽在微信公众号[程序猿声] 变邻域搜索算法(Variable Neighborhood Search,VNS)一看就懂的解析 00 目录 局部搜索再次科普 变邻域搜索 造轮子写代码 01 局部 ...
- 干货!上古神器 sed 教程详解,小白也能看的懂
目录: 介绍工作原理正则表达式基本语法数字定址和正则定址基本子命令实战练习 介绍 熟悉 Linux 的同学一定知道大名鼎鼎的 Linux 三剑客,它们是 grep.awk.sed,我们今天要聊的主角就 ...
- mysql取出现在的时间戳和时间时间戳转成人类看得懂的时间
mysql取出现在的时间戳和时间时间戳转成人类看得懂的时间,我们在mysql里面他封装了一个内置的时间戳转化的函数,比如我们现在的时间戳是:1458536709 ,"%Y-%m-%d&quo ...
- 一看就懂的ReactJs入门教程(精华版)
一看就懂的ReactJs入门教程(精华版) 现在最热门的前端框架有AngularJS.React.Bootstrap等.自从接触了ReactJS,ReactJs的虚拟DOM(Virtual DOM)和 ...
- JavaScript一看就懂(2)闭包
认识闭包之前需要先了解作用域,如果你对作用域还没有足够了解,请移步JavaScript一看就懂(1)作用域 什么是闭包? 我们可以先简单认为:一个函数a定义在另一个函数b里面,这个函数a就是闭包: f ...
随机推荐
- python Http协议
Http协议 一 HTTP概述 HTTP(hypertext transport protocol),即超文本传输协议.这个协议详细规定了浏览器和万维网服务器之间互相通信的规则. HTTP就是一个通信 ...
- Java-Maven(一):Maven的简介与安装
Maven的简介 Maven是什么? Maven是一个项目管理和整合的工具.Maven为开发者提供了一套完整的构建生命周期框架.开发者可以通过Maven更快的自动完成工程的基础构建陪孩子,因为Mave ...
- Hibernate(六):映射一对多关联关系、双向一对多映射
在领域模型中,类与类之间最普通的关系就是关联关系. 在UML中,关联是有方向的: 例如:Customer与Order,一个用户能发出多个订单,而一个订单只能属于一个用户. 单向关联 1)从Order到 ...
- hdu2062 Subset sequence----递推
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2062 题目大意: 给出n和m,集合{1,2,,,,n}的非空子集,按照一定方式排列,例如n==3时, ...
- 【面试题】由HashMap引发的一系列追问
HashMap和HashTable的区别 同:HashMap和Hashtable都实现了Map接口. 异:HashMap允许null的键值对,非同步的,非线程安全的,效率高: HashTable不允许 ...
- Eclipse代码块折叠插件,安装使用
在代码编写中经常会遇到一些很长的set(xxx)的代码,非常影响体验. 而Eclipse的folding插件可以自定义的将代码块进行折叠. 效果如下图所示: 可以根据代码块的功能来进行折叠,从而保证代 ...
- php Redis函数使用总结(string,hash,list, set , sort set )
对于:string, set , sort set , hash 的增,改操作,是同一个命令,但是把它当改操作时,及时成功返回值依旧为0 对于:list结构来说,增删改查自有一套方法. <? ...
- LeetCode题目----求中位数---标签:Array
题目难度---困难 题目要求: 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 . 请找出这两个有序数组的中位数.要求算法的时间复杂度为 O(log (m+n)) . 思路:第一眼 ...
- [Luogu 3768]简单的数学题
Description 输入一个整数n和一个整数p,你需要求出$(\sum_{i=1}^n\sum_{j=1}^n ijgcd(i,j))~mod~p$,其中gcd(a,b)表示a与b的最大公约数. ...
- delete和delete[]的区别(转载)
一直对C++中的delete和delete[]的区别不甚了解,今天遇到了,上网查了一下,得出了结论.做个备份,以免丢失. C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete ...