![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C++
文章平均质量分 66
C++
fakerth
我喜欢去衡量探索,迎接那些最强烈,最有理由吸引我的一切;而不是抓着称杆,试图减轻一些分量,我不会去假想一种状况,而是接受现实;我只沿着我能够旅行的唯一路径去旅行,在这条路径上,没有任何力量能够阻挡我。
展开
-
MPI安装与程序设计
MPI(Message Passing Interface)是一种用于编写并行程序的标准和库,用于在分布式内存系统中进行消息传递和并行计算。MPI提供了一组函数和语义,用于在多个进程之间进行通信和同步,以实现并行计算和并行任务的协调。MPI在高性能计算领域被广泛应用,用于开发并行和分布式内存计算应用程序。它提供了丰富而强大的功能,使得开发者能够充分利用并行计算资源,提高计算效率和性能。MPI有很多种实现。MPICH是其中的MPI实现之一。原创 2023-12-22 17:37:26 · 1050 阅读 · 0 评论 -
文件操作(open与fopen,write与fwrite,read与fread)
fopen函数是标准I/O库函数的一部分,它提供了更高级别的文件操作功能,例如缓冲、格式化输入输出等。而open函数直接与底层文件系统交互,提供了更底层的文件操作。linux下的fopen是open的封装函数,fopen最终还是要调用底层的系统调用open。选择使用open还是fopen取决于你的需求和使用环境。如果你需要更底层的文件操作或者在特定的系统调用接口上工作,可以选择使用open函数。如果你更倾向于使用标准C库函数以及提供的高级别文件操作功能,可以选择使用fopen函数。原创 2023-12-20 20:32:10 · 969 阅读 · 0 评论 -
【C++】模板
模板是一种参数化的多态工具。所谓参数化的多态性,是指将程序所处理的对象的类型参数化,使一段程序代码可以用于处理多种不同类型的对象。采用模板编程,可以为各种逻辑功能相同而数据类型不同的程序提供一种代码共享的机制。原创 2023-06-21 17:26:37 · 389 阅读 · 0 评论 -
【C++】I/O流类库
数据的输入和输出(input/output简写为I/O),对标准输入设备和标准输出设备的输入输出简称为标准I/O。对在外存磁盘上的文件输入输出简称为文件I/O。对内存中指定的字符串存储空间的输入输出简称为串I/O。原创 2023-06-19 22:11:30 · 577 阅读 · 0 评论 -
【C++】auto_ptr在单例模式中的应用,宏实现sizeof与align
auto_ptr 是C++标准库提供的类模板,auto_ptr对象通过初始化指向由new创建的动态内存,它是这块内存的拥有者,一块内存不能同时被分给两个拥有者。当auto_ptr对象生命周期结束时,其析构函数会将auto_ptr对象拥有的动态内存自动释放。即使发生异常,通过异常的栈展开过程也能将动态内存释放。auto_ptr不支持new 数组。auto_ptr构造时取得某个对象的所有权,在析构时释放该对象。原创 2023-06-19 15:58:57 · 264 阅读 · 0 评论 -
【C++】RTTI(runtime type information)
dynamic_cast运算符能够将基类的指针或引用安全的转换为派生类的指针或者引用。转换失败,返回空地址。在dynamic_cast被设计之前,C++无法实现从一个虚基类到派生类的强制转换。dynamic_cast就是为解决虚基类到派生类的转换而设计的。原创 2023-06-17 20:59:17 · 55 阅读 · 0 评论 -
【C++】动态创建对象
对原有的类不做任何更改,只需要增加一个宏就能够实现动态创建。原创 2023-06-16 21:13:33 · 137 阅读 · 0 评论 -
【C++】虚函数与多态
多态性是面向对象程序设计的重要特征之一,是指发出同样的消息被不同类型的对象接受时有可能导致完全不同的行为。多态的实现:函数重载、运算符重载、模板、虚函数。原创 2023-06-15 14:49:35 · 790 阅读 · 0 评论 -
【C++】继承
对基类数据成员的重定义对基类成员函数的重定义分为两种overwrite与基类完全相同与基类成员函数名相同,参数不同override虚函数public :return x_;} int x_;} int x_;Derived d;d . Show();return 0;原创 2023-06-12 19:32:07 · 831 阅读 · 0 评论 -
【C++】String类简单实现([ ]、+、+=、<<、>>运算符重载)
String类简单实现([ ]、+、+=、<<、>>运算符重载)原创 2023-05-14 17:12:14 · 588 阅读 · 0 评论 -
【C++】运算符重载
运算符重载允许把运算符(如+、-、*、/、等)应用于自定义数据类型的对象。直观自然,可以提高程序的可读性,体现了C++语言的可扩充性。运算符重载仅仅只是语法上的方便,它是另一种函数的调用方式。运算符重载本质上是函数重载。不要滥用重载,因为它只是语法上的方便,所以只有在涉及的代码更容易写、尤其是更易读时才有必要重载。原创 2023-05-13 17:49:09 · 66 阅读 · 0 评论 -
【C++】异常
编译错误,即语法错误。程序就无法被生成运行代码。原创 2023-05-01 19:37:18 · 51 阅读 · 0 评论 -
【C++】标准库map类型
map是一种关联式容器,基于key,value来进行存储。采用的数据结构是红黑数。原创 2023-04-19 12:12:06 · 390 阅读 · 0 评论 -
【C++】标准库vector类型
vector是同一种类型的对象的集合。vector的数据结构很像数组,能非常高效和方便地访问单个元素,空间是连续的,并且是可以拓展的。vector是一个类模板(class template)。原创 2023-04-18 21:34:17 · 326 阅读 · 0 评论 -
【C++】标准库string类型
c_str将string转化为const char* const_cast将const char*转化为char*原创 2023-04-18 17:52:12 · 110 阅读 · 0 评论 -
【C++】友元
友元是一种允许非类成员函数访问类的非公有成员的一种机制。可以把一个函数指定为类的友元,称为友元函数。也可以把整个类指定为另一个类的友元,称为友元类。原创 2023-04-17 21:07:27 · 296 阅读 · 0 评论 -
【C++】从C语言实现栈与C++实现栈看数据抽象和封装
C语言实现栈,C++实现栈原创 2023-03-19 22:14:31 · 104 阅读 · 0 评论 -
【C++】对象的使用
static成员,static成员函数,四种对象作用域与生存期,单例模式,const成员函数,const对象,mutable原创 2023-03-19 10:14:13 · 370 阅读 · 0 评论 -
【C++】构造函数与析构函数
构造函数,析构函数,转换构造函数,赋值与初始化的区别,explicit,构造函数初始化列表,对象成员及其初始化,const成员、引用成员的初始化,拷贝构造函数,深拷贝与浅拷贝、赋值操作,禁止拷贝,空类默认产生的成员原创 2023-03-17 22:05:42 · 340 阅读 · 0 评论 -
【C++】类与对象
类声明,公有、私有、保护成员,内联成员函数,成员函数的重载,成员函数缺省参数,类与结构体,隐含的this指针,类作用域,前向说明,嵌套类,局部类原创 2023-03-12 15:09:00 · 152 阅读 · 0 评论 -
【C++】面向对象
【C++进阶】面向对象原创 2023-03-11 14:36:20 · 495 阅读 · 0 评论 -
【C++】一些小知识点
const限定符,结构体内存对齐,域运算符,new、delete运算符,重载,name managling,extern "C",带默认形参值的函数,内联函数,内联函数与带参数宏区别原创 2023-02-24 14:11:42 · 383 阅读 · 0 评论 -
【C++】类型转换运算符
类型转换运算符原创 2023-02-24 14:04:50 · 74 阅读 · 0 评论 -
【C++】引用
引用不是变量,引用仅仅是变量的别名,引用没有自己独立的空间。引用要与它所引用的变量共享空间。对引用所作的改变实际上就是对它所引用的变量的改变。引用一经初始化,不能重新指向其他变量。原创 2023-02-22 21:37:00 · 78 阅读 · 0 评论