C++语言学习
C++语言学习
yaoming168
这个作者很懒,什么都没留下…
展开
-
Essential C++ 异常处理
通过`Essential C++`笔记的形式对C++相关`重点知识`进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。原创 2024-02-24 18:23:50 · 222 阅读 · 0 评论 -
Essential C++ 以template进程编程
通过`Essential C++`笔记的形式对C++相关`重点知识`进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。原创 2024-02-24 18:23:10 · 206 阅读 · 0 评论 -
Essential C++ 面向对象编程风格
通过`Essential C++`笔记的形式对C++相关`重点知识`进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。原创 2024-02-24 18:21:56 · 465 阅读 · 0 评论 -
Essential C++ 基于对象的编程风格
通过笔记的形式对C++相关重点知识进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。原创 2024-02-24 18:20:44 · 222 阅读 · 0 评论 -
Essential C++ 泛型编程风格
通过`Essential C++`笔记的形式对C++相关`重点知识`进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。原创 2024-02-24 18:19:24 · 146 阅读 · 0 评论 -
Essential C++面向过程的编程风格
通过`Essential C++`笔记的形式对C++相关`重点知识`进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。原创 2024-02-24 18:16:50 · 213 阅读 · 0 评论 -
Essential C++ 编程基础
通过`Essential C++`笔记的形式对C++相关`重点知识`进行汇总,读者通读此系列文章就可以轻松的把该语言基础捡起来。原创 2024-02-24 18:14:58 · 620 阅读 · 0 评论 -
华为C&C++语言编程规范--笔记
华为C&C++语言编程规范原创 2024-02-06 23:10:45 · 4060 阅读 · 5 评论 -
C和C++面试--看的不多只看一篇
可以通过面试题的形式检验和巩固自己对于语言的掌握情况原创 2024-02-06 21:35:25 · 990 阅读 · 0 评论 -
改善c++程序建议——重中之重的类(四)
c++内存模型规定,如果出现继承结构,内存分布一定是先基类部分的数据,后派生类部分的数据。1)用private修饰成员变量,可让数据成员隐藏起来,通过数据成员的Getter和Settr来实现访问控制,这样可以更加精确的控制成员可读性;虚基类与多重继承的情况一样,因为虚基类是为了多重继承而产生的,对象内部处理插入积累函数的指针外,还插入虚基类指针;2)将数据成员隐藏于功能性的接口中,其实是为我们预留了以后改变实现决策的权利,并为以后的各种实现提供了弹性;建议56:在正确的场合使用恰当的特性。原创 2012-12-18 11:01:21 · 86 阅读 · 0 评论 -
Primer Plus C++中的预处理命令
一、常见的预处理功能: 预处理器的主要作用就是: 把通过预处理的内建功能对一个资源进行等价替换,最常见的预处理有: 文件包含,条件编译、布局控制和宏替换4种。 文件包含: #include 是一种最为常见的预处理,主要是做为文件的引用组合源程序正文。 条件编译: #if,#ifndef,#ifdef,#endif,#undef等也是比较常原创 2013-12-20 15:50:34 · 659 阅读 · 0 评论 -
Primer Plus C++ 虚函数
一、虚函数原理二、虚函数用法三、虚函数注意原创 2013-09-22 17:22:39 · 574 阅读 · 0 评论 -
Primer Plus c++ #ifndef说明
一、 #ifndef定义#ifndef x //if not define的简写#define x...#endif这是宏定义的一种,它可以根据是否已经定义了一个变量来进行分支选择,一般用于调试等等.实际上确切的说这应该是预处理功能中三种(宏定义,文件包含和条件编译)中的一种----条件编译。 C语言在对程序进行编译时,会先根据预处理命令进行原创 2013-09-17 10:07:09 · 833 阅读 · 0 评论 -
Primer Plus C++ 复制构造函数
何时调用C++复制构造函数和拷贝构造函数: 复制构造函数用于将一个对象复制到新创建的对象中。也就是说,它用于初始化过程中,而不是常规的赋值过程中。类的复制构造函数原型通常如下: class_name(const class_name&); 它接受一个指向类对象的常量引用作为参数。例如,String类的复制构造函数的原型如下: String(const S原创 2013-09-17 15:39:16 · 638 阅读 · 0 评论 -
Primer Plus c++ 构造函数汇总
一、定义构造函数 是一种特殊的方法 主要用来在创建对象时初始化对象 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中 特别的一个类可以有多个构造函数 可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载二、构造函数的特点1.构造函数的命名必须和类名完全相同。在java中普通函数可以和构造函数同名,但是必须带有返回值;2.构造函数原创 2013-09-17 15:16:26 · 737 阅读 · 0 评论 -
C/C++_lesson9~14测试
第一大题、描述题,实现题目要求的代码或写出题目要求的解释(共70分)1. 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。2. 用变量a给出下面的定义a) 一个整型数b) 一个指向整型数的指针c) 一个指向指针的的指针,它指向的指针是指向一个整型数d) 一个有10个整型数的数组e) 一个有10个指针的数组,该指针是指向一个整型数的f) 一个指原创 2014-07-27 19:30:31 · 588 阅读 · 0 评论 -
C/C++_lesson_11_指针函数
指向全局函数的函数指针void fun(){ cout“fun()”endl;}void (*pFun)();pFun=&fun;原创 2014-10-26 10:53:09 · 624 阅读 · 0 评论 -
C/C++_lesson_10_静态函数、函数指针、友元、操作符重载
1、通过类实现一个双向链表。 要求: 正反遍历 动态增加子节点 Add(Node *node); 插入子节点Insert(intnIndex,Node *node); 删除子节点Remove(intnIndex,Node*node); 查找子节点Find(DataType原创 2014-07-05 19:05:13 · 847 阅读 · 0 评论 -
Primer plus C++ 第十六章 标准模板库_STL排序函数
/**STL中排序相关函数:* 1)operator原创 2012-12-22 15:24:39 · 850 阅读 · 0 评论 -
Primer plus C++ 第十六章 标准模板库_vector模板类方法
/* *STL提供的一些基本的方法: *1)size()返回容器中元素数目; *2)swap()交换两个容器的内容; *3)begin()返回一个指向容器中的第一个元素中的迭代器; *4)end()返回一个表示超过容器尾的迭代器; *5)push_back()是一个方便的方法,它将元素添加到矢量 *6)erase()方法删除矢量中给定的区间元素; *7)inser()方法的功能与e原创 2012-12-21 20:23:40 · 466 阅读 · 0 评论 -
Primer plus C++ 第十六章 string类_输入
/* * 从文件中读取strings * 对于文件要查找的文件,应将其放在可执行程序的或工程文件所在的目录中,否则,必须提供完整的目录; */#include#include#include#includeint main(){using namespace std;ifstream fin;fin.open("tobuy.txt");if(fin.is_open()原创 2012-12-21 18:29:11 · 448 阅读 · 0 评论 -
Primer plus C++ 第十六章 标准模板库_vector模板类
/* * STL提供了一组表示容器、迭代器、函数对象和算法的模板; * 容器:是一个与数组类似的单元,可以存放若干个值(储存的值的类型相同); * 算法:完成特定任务的处方; * 迭代器:能够用来遍历容器的对象,与能够遍历数组的指针类似,是广义指针; * 下面介绍一下vector模板类: */#include#include#includeconst int NUM = 5;原创 2012-12-21 19:38:28 · 563 阅读 · 0 评论 -
Primer plus C++ 第十一章 类和动态内存分配_反面理解String类(class and dynamic memory allocation)
/************************************************************************//* strngbad.h __ flawed(缺点) string class definition*//********************************************************************原创 2012-12-25 16:31:59 · 783 阅读 · 0 评论 -
Primer plus C++ 第十一章 使用类 _操作符重载
/************************************************************************//* 创建友元: 1)将其原型放在类声明中,并在原性声明前加上关键字friend; friend Time operator* (double m, const Time & t); 注:a)虽然operator * ()函数是在类声明原创 2012-12-24 19:11:12 · 552 阅读 · 0 评论 -
Primer plus C++ 第十章 对象和类_类的设计进化_构造与析构
/************************************************************************//* 1、一般来说,包含类声明的头文件和包含方法定义的源代码文件的文件名应相同,以便跟踪哪些文件与那些文件是一起的。将类声明和成员函数放在不同的文件中,可以将接口的抽象定义(类声明)和实现细节(成员函数定义)分开。*//***********原创 2012-12-23 14:15:41 · 630 阅读 · 0 评论 -
Primer plus C++ 第十章 对象和类_类的设计
类设计的一般步骤:1、提供类声明: 数据成员被放在私有部分,成员函数被放在公有部分;格式:class className{private: data member declarationspublic: member function prototypes}2、实现类成员函数:char * Bozo::Retort();Retort()不仅是c原创 2012-12-22 16:53:24 · 645 阅读 · 0 评论 -
Primer Plus c++ 重写与重载
一、重载(overload)指函数名相同,但是它的参数表列个数或顺序,类型不同。但是不能靠返回类型来判断。(1)相同的范围(在同一个作用域中) ;(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。(5)返回值可以不同;二、重写(也称为覆盖 override)是指派生类重新定义基类的虚函数,特征是:(1)不在同一个作用域(分别位于派生类原创 2013-09-17 14:54:55 · 760 阅读 · 0 评论 -
Primer plus C++ 第十六章 string类_构造函数
【代码】Primer plus C++ 第十六章 string类_构造函数。原创 2012-12-21 17:04:52 · 846 阅读 · 1 评论 -
C/C++_lesson_8_函数重载、类与对象
总结: 如果一个类拥有资源,当这个类的对象发生复制过程,资源重新分配,这个过程就是深拷贝,反之,没有重新分配资源,就是浅拷贝。在某种情况下,类中成员变量需要动态开辟内存,如果使用浅拷贝,也就是把对象里的值完全复制给另一个对象,如A=B。这时,如果B中有一个成员变量指针已经申请了内存,那A中的那个成员变量也指向同一块内存。1.用struc设计一个单向链表,对其添加3个成员信息,然后遍历链表打印出所有节点的内容。每个节点之间可以相互拷贝(拷贝构造函数、深拷贝的实现)2)构造与析构、深拷贝与浅拷贝。原创 2014-06-16 14:42:24 · 613 阅读 · 0 评论 -
C/C++_lesson1_C++语法基础
C/C++_lesson1_C++语法基础原创 2014-06-17 22:20:10 · 530 阅读 · 0 评论 -
C/C++_lesson1~8测试
void SetPersonName( Person* p, char* pName )//设置p的姓名为pName。void fun( int ns[10] ) //数组可能收取不全。sizeof(ns )的值是:___20____ // 数组大小。sizeof(p )的值是:___4____ // int 指针。下面的数组arr, 和arr[3]等价的表达是:_______//屏幕的显示为 fedcba。原创 2014-06-17 22:27:41 · 582 阅读 · 0 评论 -
C/C++_lesson1~7_总结
C/C++_lesson1~7_总结原创 2014-06-17 19:46:34 · 549 阅读 · 0 评论 -
C++ Interview summary
文章目录参考链接:1.50 家企业 C++ 岗校招面经2.2021 秋招 100 道 C++ 面试高频题汇总1.左值引用与右值引用有什么区别,左值引用和右值引用的目的是什么?2.虚函数和纯虚函数3.构造函数和析构函数能不能是虚函数?4.std::move 是什么5.快速排序,常用的排序算法6.多线程,怎么判断线程结束7.vector 中迭代器失效的情况8.虚析构函数9.引用和指针的区别10.静态链接库与动态链接库的区别11.假如定义了一个指针,后面接着一个循环并 return,会原创 2021-10-27 11:59:38 · 287 阅读 · 0 评论 -
C++ Primer 要点汇总
《C++ Primer》要点原创 2021-08-26 15:27:33 · 190 阅读 · 0 评论 -
派生类
原创 2012-12-07 13:49:54 · 73 阅读 · 0 评论 -
指针基础
原创 2012-12-14 11:06:43 · 60 阅读 · 0 评论 -
c++函数
原创 2012-12-08 13:02:26 · 76 阅读 · 0 评论 -
静态数据成员
rivate访问规则。2、静态数据成员实际上是类域中的全局变量。所以,静态数据成员的定义(初始化)不应该被放在头文件中。3、C++静态数据成员被类的所有对象所共享,包括该类派生类的对象。即派生类对象与基类对象共享基类的静态数据成员。4、C++静态数据成员可以成为成员函数的可选参数,而普通数据成员则不可以。5、C++静态数据成员的类型可以是所属类的类型,而普通数据成员则不可以。 普通数据成员的只能声明为 所属类类型的 指针或引用。转载:[url]http://www.c原创 2012-12-10 19:24:18 · 74 阅读 · 0 评论 -
虚函数
回类型 函数名(形参表) { 函数体 }[b][size=medium]2、虚函数做几点补充说明:[/size][/b](1)因为虚函数使用的基础是赋值兼容,而赋值兼容成立的条件是派生类之从基类公有派生而来。所以使用虚函数,派生类必须是基类公有派生的;(2)定义虚函数,不一定要在最高层的类中,而是看在需要动态多态性的几个层次中的最高层类中声明虚函数;(3)虽然在上述示例代码中main()主函数实现部分,我们也可以使用相应图形对象和点运算符的方原创 2012-12-07 10:53:23 · 76 阅读 · 0 评论 -
函数模板
两类,一个是函数模版,另外一个是类模版。原创 2012-12-05 10:47:41 · 65 阅读 · 0 评论