zoukankan      html  css  js  c++  java
  • homework-08

    1.局部变量生命周期的理解

    void main(int argc,char**argv){
    int j=3;
    {  
      int j=4;
    } printf(
    "%d ",j); }

    输出结果

    2.两种内存的申请和释放的方式

    void main(int argc,char**argv){
        int j=3;//申请栈内存
        int *q=(int *)malloc(sizeof(int));//申请堆内存
        *q=3;
        free(q);//堆内存释放
        system("pause");
    }//栈内存释放

    3.unique_ptr理解

    unique_ptr构造函数:make_unique<CLASS>(wstring,wstring)

    unique_ptr强调指针的独特性,以一个对象只能被一个指针所至,所以unique_ptr不能被复制或跟复制有关的操作使用,只可能用move来更换指向该对象的指针

    move函数原型:move(unique_ptr)

    如:

    share_ptr的理解

    share_ptr比较类似与我们常说的指针,可以复制,可以像正常指针一样使用,但是他增加了新的功能,比如:

    指针指向的对象会记录当前指向自己的指针数量,如果此数量为0的时候则对象被自动释放掉;

     4.URL分析代码

    STL风格代码

     1 const string sperator[3]={"://","/","."};//三种分隔符
     2 string url;//输入的url
     3 vector<string> result;//分割后的字符串存放
     4 getline(cin,url);//输入
     5 size_t start_Index=0;//被分割的每一小段的开始索引地址
     6 size_t temp_end_Index=0;//查询最近的分隔符的中间索引地址,负责比较哪个风格符最近
     7 size_t end_index=url.find(sperator[0],start_Index);//默认开始寻找"://"分隔符
     8 int sperator_num=0;//分隔符的索引,值为0,1,2
     9 
    10 while(end_index!=string::npos)
    11 {
    12     result.push_back(url.substr(start_Index,end_index-start_Index));//加入result模板
    13     start_Index=end_index+sperator[sperator_num].length();//跳过分隔符长度,更新下一个将被分割的小段的开始索引地址
    14     end_index=string::npos;//置成最大位置,方便比较
    15     for(int i=0;i<3;i++)//顺次寻找三个分隔符中索引地址最小的,并选中它为此段的终止索引地址
    16     {
    17         temp_end_Index=url.find(sperator[i],start_Index);
    18         if(temp_end_Index<end_index)
    19         {
    20             end_index=temp_end_Index;
    21             sperator_num=i;
    22         }
    23     }
    24 }
    25 result.push_back(url.substr(start_Index,end_index-start_Index));//把最后一小段推入
  • 相关阅读:
    库存管理系统
    2018/12/9数据库的增删改查
    小学生出题系统(文件输入输出)
    第五次实验动手动脑
    (异常处理)JAVA项目中的常用的异常处理情况
    学习进度——第十三周
    程序员修炼之道:从小工到专家读后感02
    第一阶段意见评论
    学习进度——第十二周
    share团队冲刺10
  • 原文地址:https://www.cnblogs.com/jazzone/p/3428138.html
Copyright © 2011-2022 走看看