![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 81
勇敢鸟鸟,不怕C++
Eccentric_Lee
这个作者很懒,什么都没留下…
展开
-
C++ string模拟实现
string模拟实现简单复制和拷贝功能的实现常规写法简易写法简单复制和拷贝功能的实现常规写法#pragma once#include<iostream>using namespace std;namespace lich{ class string { public: //初始化字符串 string(const char* str) :_str(new char[strlen(str)+1]) { strcpy(_str, str); } //原创 2022-03-08 21:43:44 · 697 阅读 · 0 评论 -
C++ 字符串string
stringstring简单介绍:构造函数的原型:string简单介绍:string类需要包含头文件string,string类封装了串的属性并提供了一系列允许访问这些属性的函数。细节: string并非是一个独立的类,而是类模板basic_string的一个特化实例。构造函数的原型:sting(); //默认构造函数,建立一个长度为0的串string(const string& str); //赋值拷贝string(const char* s); //用指针s所指向的字符串常量初原创 2022-03-06 17:25:45 · 799 阅读 · 0 评论 -
C++内存管理
内存管理C/C++内存分布C/C++内存分布分为:栈又叫堆栈:非静态局部变量/函数参数/返回值等等,栈是向下增长的。内存映射段是高校的I/O映射方式,用于装载一个共享的动态内存库。用户可以使用系统接口创建共享内存,做进程间通信。堆用于程序运行时动态内存分配,堆是可以上增长的。数据段–存储全局数据和静态数据。代码段–可执行的代码/只读常量。看下面的代码示例,选择题如下:#include<iostream>using namespace std;int globalVa原创 2022-02-10 10:14:15 · 466 阅读 · 0 评论 -
日期类的完整实现
Date类的具体实现头文件内容:Date.h源文件 Date.cpp源文件 Test.cpp头文件内容:Date.h#pragma once#include<iostream>using namespace std;class Date { friend ostream& operator<<(ostream& out, const Date& d); friend istream& operator>>(istream&原创 2022-02-02 13:42:12 · 743 阅读 · 0 评论 -
C++类与对象(3)
类与对象(3)补充:牢记只有成员函数才有this指针。原创 2022-02-02 10:50:04 · 1651 阅读 · 0 评论 -
C++类与对象(2)
类与对象类的默认成员函数初始化和清理:构造函数:析构函数:类的默认成员函数初始化和清理:构造函数主要完成初始化工作析构函数主要完成清理工作构造函数:我们可以举一个关于日期的简单例子:#include<iostream>using namespace std;//构造函数是特殊的成员函数,构造函数虽然名称叫构造,//但是需要注意的是构造函数的主要任务并不是开空间创建//对象,而是初始化对象//函数与类名相同、无返回值、对象实例化时编译器自动调用、构造函数可以重载cl原创 2022-01-30 16:56:13 · 801 阅读 · 0 评论 -
C++类与对象(1)
类和对象类的引入:类的简单定义类的两种定义方式类中的访问限定符及封装访问限制符:封装:对象的实例化:类对象的存储方式结构体对齐规则:this指针类的引入:类的简单定义C语言中,结构体只定义变量,在C++中,结构体不仅可以定义变量,也可以定义函数。同时我们应该注意到:C++是兼容C的,所以在C++中,通常使用struct/class 表示类。如下代码所示,主要举例的是C++兼容C的功能:#include<iostream>#include<map>#include&原创 2022-01-23 17:42:51 · 407 阅读 · 0 评论 -
C++基础(2)
C++基础引用引用定义:定义: 引用不是引入一个新的变量,而是给已经存在的变量取了一个别名。因此编译器也不会给引用变量开辟一个新的空间,它和它的引用的变量共同使用同一个内存空间。引用的定义打个比方就是比如孙悟空和孙大圣的概念,两者实质是一个人;而引用概念也是一样,实质上共同使用同一个内存空间地址。我们可以通过简短代码验证一下:#include<iostream>using namespace std;void TestRef(){ int a = 1; int&原创 2022-01-20 14:26:26 · 331 阅读 · 0 评论 -
面向对象程序语言的杂谈
浅谈面向对象语言的发展计算机程序语言的发展:机器语言与汇编语言:高级语言:面向对象语言:面向对象的方法:面向对象的由来:面向对象的基本概念:对象:类:封装:继承:多态性:面向对象的软件开发:参考资料:计算机程序语言的发展:语言=语法+语法规则;程序语言是计算机可以识别的语言,供计算机阅读和执行。机器语言与汇编语言:首先我们知道计算机系统包括软件和硬件。软件包括计算机所运行的各种程序以及所需要的有关文档资料。程序使计算机指令的集合。所谓的指令:就是计算机可以识别的命令。一台计算机硬件系统能够原创 2021-12-16 19:19:26 · 264 阅读 · 0 评论 -
C++基础(1)
C/C++命名冲突问题(namespace):在C语言中,我们在定义变量的时候,由于变量命名和库中的命名有冲突,C语言中并没有解决办法:例如:#include<stdio.h>#include<stdlib.h>//命名冲突问题int rand = 0;int main() { printf("%d", rand); return 0;}产生的结果就会是:编译器会提示rand重定义。而在C++中,我们可以利用命名空间来解决命名冲突的问题:假原创 2021-11-27 19:14:44 · 439 阅读 · 0 评论