使用两个栈来实现队列,可以通过将一个栈作为输入栈,另一个栈作为输出栈来完成队列的操作。 具体实现方法如下: 当需要插入一个元素时,将元素压入输入栈中。 当需要删除队首元素时,如果输出栈不为空,直接弹出输出栈的栈顶元素;否则,将输入栈中的所有元素依次弹出并压入输出栈中,然后再弹出输出栈的栈顶元素。
类型推导:auto、decltype 右值引用 nullptr关键字:可以明确指定空指针,避免和整型值0混淆 范围for循环:可以遍历容器、数组和其它可迭代对象 列表初始化 lambda表达式:可以定义匿名函数,使代码更加灵活 静态断言:在编译时检查程序的正确性 强类型枚举:可以避免枚举类型的值被隐式地转换为整型
Int转float会有精度损失,这与float类型在内存中的存储方式有关(float和double不一样),浮点数转换为整型数会有小数截断问题 函数里面是否可以嵌套函数可以在函数中嵌套函数的,被嵌套的函数称为内部函数或局部函数。内部函数只在包含它的函数的作用域内可见,对于函数外部的其他部分来说是不可见的。内部函数可以
overload重载:是指同一可访问区内被声明的几个具有不同参数列(参数的类型,个数,顺序不同)的同名函数,根据参数列表确定调用哪个函数,重载不关心函数返回类型。 override重写(覆写):是指派生类中存在重新定义的函数,以实现不同的功能,一般是用于子类在继承父类时,重写父类方法。其函数名、参数列表、返回值类型、
修饰全局变量时:表明一个全局变量只对定义在同一文件中的函数可见(只能该文件内访问) 修饰局部变量时:表明该变量的值不会因为函数终止而丢失 修饰函数时:表明该函数只在同一文件中调用(只能该文件内访问) 修饰类的数据成员:表明对该类所有对象数据成员只有一个实例,即该实例归所有对象共有 修饰类的成员函数:该成
声明一个指向字符或字符串常量的指针,p所指向的内容不可更改(p是指向char类型的指针,const表示p指向的内容为const类型不可更改,不能指向const char类型) 没有const*的运算,所以与前面的一样 从右至左,Const修饰的是p,p中的值不可更改(p是一个地址) const_cast用来