
C++
青草再次仰望
好小一只程序猿~
展开
-
[01]Leetcode第一章--链表
[206]反转链表头插法实现。取一个节点之后,不要忘了将其next置NULL.[160]相交链表直接求解。另外,可用一个set将其中一个链表的节点全部放入,然后用第二个链表去set里面比较所得第一个即为所求。[141][142]环形链表[086]分隔链表[138]复制带随机指针的链表[021]合并两个有序链表...原创 2019-12-02 22:14:03 · 111 阅读 · 0 评论 -
C++中的mutable关键字
mutable的中文意思是“可变的,易变的”,跟constant(既C++中的const)是反义词。 在C++中,mutable也是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中。 我们知道,如果类的成员函数不会改变对象的状态,那么这个成员函数一般会声明成const的。但是,有些时候,我们需要在const的函数里...转载 2019-06-09 23:46:13 · 135 阅读 · 0 评论 -
C++中的explicit关键字
C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生,声明为explicit的构造函数不能在隐式转换中使用。 C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色。1 是个构造;2 是个默认且隐含的类型转换操作符。 所以, 有时候在我们写下如 AAA...转载 2019-06-11 09:52:38 · 93 阅读 · 0 评论 -
C++中的智能指针
我们知道除了静态内存和栈内存外,每个程序还有一个内存池,这部分内存被称为自由空间或者堆。程序用堆来存储动态分配的对象即那些在程序运行时分配的对象,当动态对象不再使用时,我们的代码必须显式的销毁它们。在C++中,动态内存的管理是用一对运算符完成的:new和delete,new:在动态内存中为对象分配一块空间并返回一个指向该对象的指针,delete:指向一个动态独享的指针,销毁对象,并释放与之关联...转载 2019-06-22 12:00:29 · 200 阅读 · 0 评论