![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
sunjiyuana
这个作者很懒,什么都没留下…
展开
-
C++函数传参的新方法---引用
关于传参方式,之前在C语言里面已经接触过了两种:传值调用和传址调用两种。而作为C语言的加强版,C++中自然也是将这两种方式,继承了下来,并且在C++里面也有了新的一种传参方式----引用。引用概念首先,从概念上讲,所谓的引用,就是给一个已经存在的变量,起了一个新的别名。其实它用的还是和被引用的对象是同一块内存空间,并没有重新开辟出一段新的内存空间。注:既然使用的是同一块空间,引用当然要注意...原创 2019-02-22 00:50:59 · 533 阅读 · 0 评论 -
C++泛型编程---函数模板
首先说到泛型编程,实际上就是一种编写与数据类型无关的代码的思想,也就是说程序的执行,要能做到不受数据类型的限定。要能够体现出一种代码复用的思想,也就是说一次的编写,可以应用于不同类型的场景。关于处理不同的数据类型,其实在C++中,函数重载,已经可以做到了,比如说现在我要实现一个可以交换不同数据类型的交换函数,那么函数重载应该是这样的:void Swap(int& left, in...原创 2019-02-12 11:17:56 · 213 阅读 · 1 评论 -
C语言知识总结
原创 2019-02-20 15:29:27 · 150 阅读 · 0 评论 -
重载,重写与重定义的区别
重载,是在学习命名空间时提出的,为了让同一个方法能处理不同的数据,而又不愿意像C语言里那样将函数命名成多个函数名,又需要避免命名冲突。在同一命名空间内被声明的几个具有不同参数列表的(参数的类型、个数、顺序不同)同名函数,程序会根据不同的参数列表来确定具体调用哪个函数,这种机制就是重载。重载不关心函数的返回值类型,即返回类型不同无法构成重载。此外,C++中的const成员函数也可以构成ov...原创 2019-02-11 23:43:32 · 2290 阅读 · 1 评论 -
c++知识体系
原创 2019-02-24 12:21:44 · 743 阅读 · 1 评论 -
指针
指针这个东西,在C语言和C++中,可以说是使用的非常广泛的,有很多人说C++比Java难学,就是难在指针这块。那么,什么是指针呢? 谈到指针,实际上就必须先要了解内存,在冯诺依曼体系结构中,五大硬件单元里面,内存扮演的是存储器的角色,基本上我们所有的程序运行都是以内存为载体。(所以说基本上,当然是有特例的,比如位操作,就属于特殊的操作,这是把数据加载到CPU中,在寄...原创 2019-02-28 00:04:52 · 554 阅读 · 0 评论 -
判断链表是否带环
给定一个链表,判断链表中是否有环。为了表示给定链表中的给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数pos来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果pos是-1,则在该链表中没有环。示例 1:输入:head = [3,2,0,-4], pos = 1输出:true解释:链表中有一个环,其尾部连接到第二个节点。解决这...原创 2019-02-27 23:40:55 · 273 阅读 · 0 评论 -
从C语言到c++的过渡
C++对C语言中设计不合理的地方的改进C++98相关的知识点 C++98中进行过对C语言的语法做成模板的方式,包括头文件时可以 .h 98以后这种方案就被抛弃了C++11相关的知识点 关键字:c99有32个。C++98继承C语言,有63个关键字, C++ 对C语言有那些拓展? 扩充了面向对象的概念,高度抽象化C++对C语言的增强 命名空间(na...原创 2019-02-23 12:26:05 · 278 阅读 · 0 评论 -
浅谈浅拷贝,深拷贝以及写时拷贝
浅拷贝关于浅拷贝,最初是在学习类中的成员函数时关于默认的拷贝构造函数是学到的。浅拷贝:也称位拷贝,编译器只是将对象中的值拷贝过来。如果对象中管理资源,最后就会导致多个对象共享同一份资源,当一个对象销毁时就会将该资源释放掉,而此时另一些对象不知道该资源已经被释放,以为还有效,所以当继续对资源进项操作时,就会发生发生了访问违规。要解决浅拷贝问题,C++中引入了深拷贝。说明:上述S...原创 2019-02-22 01:25:30 · 147 阅读 · 0 评论 -
字符与字符串
在C语言里面,我们经常会遇到对字符和字符串的处理,但是有一个很大的问题是,C语言里本身是没有字符串这个类型的。通常我们实现字符串,是通过字符型常量,和字符型数组来代替的。也就是我们会把一个个字符放在一个常量区,用栈上开辟的指针变量来进行访问,或者是在栈上开辟一个数组空间,将字符放在一个数组中,遍历读取。而在c++里面一般我们可以使用STL模板库中,有一个string容器,这个容器是c++ ...原创 2019-02-27 00:29:46 · 142 阅读 · 0 评论