• 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{ }

          

  • 相关阅读:
    Java之美[从菜鸟到高手演变]之设计模式
    常见JAVA框架
    每周一荐:学习ACE一定要看的书
    YUV格式&像素
    关于makefile
    socket通信
    [理论篇]一.JavaScript中的死连接`javascript:void(0)`和空连接`javascript:;`
    [应用篇]第三篇 JSP 标准标签库(JSTL)总结
    [应用篇]第一篇 EL表达式入门
    KVM基本实现原理
  • 原文地址:https://www.cnblogs.com/Q1143316492/p/6443261.html
Copyright © 2020-2023  润新知