随笔分类 -  C++

摘要:样例输入 11Xo 6*E 样例输出 代码 #include <cstdio> #define MAX 80 char buf[MAX][MAX]; void mySwap(int& a, int& b) { int temp = a; a = b; b = temp; } void drawLin 阅读全文
posted @ 2021-02-27 15:32 xkfx 阅读(254) 评论(0) 推荐(0) 编辑
摘要:结构变量的声明和初始化 #include <cstdio> int main() { struct { int age; int height; } x, y = {29, 180}; // 结构的成员在内存中按照声明的顺序存储 x.age = 30; x.height = 170; return 阅读全文
posted @ 2021-02-27 11:31 xkfx 阅读(76) 评论(0) 推荐(0) 编辑
摘要:判断闰年 地球绕太阳转一周的时间实际是365天5小时48分46秒。算下来,每四年会多出来一天,所以加到那一年的二月。但是这样算,又多算了一点点时间。于是,又规定,整百的年份计算闰年除以400。这样,我们的历法才能最大程度的和地球绕太阳转契合。 总之:非整百年份除以4无余数;整百年份除以400无余数 阅读全文
posted @ 2021-02-25 15:30 xkfx 阅读(480) 评论(0) 推荐(0) 编辑
摘要:C++重载<运算符 C++的string已经定义了各种比较运算符。 C风格的字符串(char数组)则采用strcmp比较字符串大小。详细见下 #include <cstdio> #include <algorithm> #include <cstring> using namespace std; 阅读全文
posted @ 2021-02-24 16:34 xkfx 阅读(1476) 评论(0) 推荐(1) 编辑
摘要:相关资料: Understanding roles of CMake, make and GCC GCC and Make ( A simple tutorial, teaches u how to use gcc and make.) What is the difference between 阅读全文
posted @ 2018-03-18 21:57 xkfx 阅读(514) 评论(0) 推荐(0) 编辑
摘要:问题描述 用二维数组表示地图,若值为 1 则表示有障碍物,若值为 0 则表示可以通行。 输入: m*n 的二维数组,布线起点坐标,布线终点坐标。 输出: 最短布线距离以及对应的布线路径。 问题分析 从起点开始布线,将起点标记为 0 ,把四周可布线的位置标记为 起点标记值 + 1 ,同时将这些点插进队 阅读全文
posted @ 2017-10-22 21:45 xkfx 阅读(2896) 评论(2) 推荐(0) 编辑
摘要:二叉树相关,留着备用: 阅读全文
posted @ 2017-10-11 20:16 xkfx 阅读(337) 评论(0) 推荐(0) 编辑
摘要:线性表就是字面上的意思, 顺序表是线性表基于数组的一种实现, “顺序”这个名字怎么来的并不清楚,可以勉强解释为“存储地址是连续、顺序的”。 另外两种线性表实现分别是“基于链表”和“散列存储”。 顺序表可以是动态的,也可以是静态的, “静态”就是一开始就知道表容量,并且这个容量在之后无法被更改; “动 阅读全文
posted @ 2017-09-24 20:43 xkfx 阅读(946) 评论(0) 推荐(0) 编辑
摘要:Ⅰ、有时不得不用到“构造函数初始值列表”,原因是有些编译器不支持类内初始值,这样做可以避免在函数体内初始化。 需要注意的是:被初始化列表忽略的数据成员将被默认初始化(结果取决于位置,可能产生可怕后果)。下面是构造器的 N 种情况: 程序员直接忽略构造器 --> 产生默认合成的构造函数 --> 成员被 阅读全文
posted @ 2017-09-23 18:36 xkfx 阅读(224) 评论(0) 推荐(0) 编辑
摘要:Ⅰ、类成员函数的隐式参数 T *const this 。 就是说对于某个类的成员函数 returnType function() 的真实面目其实是这样的 returnType function(T *const this) 。 如果调用 obj.function() ,可以认为编译器将该调用重写成了 阅读全文
posted @ 2017-09-22 23:54 xkfx 阅读(143) 评论(0) 推荐(0) 编辑
摘要:1 - Class Members Revisited 2 - Functions That Return *this 3 - Class Types 【Class Members Revisited】 1、Defining a Type Member: #include <iostream> #i 阅读全文
posted @ 2017-04-12 18:33 xkfx 阅读(369) 评论(0) 推荐(0) 编辑
摘要:练习 7.16 无,类的接口定义在public说明符之后,类的实现细节定义在private说明符之后。 7.17 有。类成员的默认访问权限不同。class的类成员默认为private,struct的则默认为public。 通常来说,当我们希望定义的类的所有成员是public的时候就用struct。 阅读全文
posted @ 2017-04-10 08:45 xkfx 阅读(398) 评论(0) 推荐(0) 编辑
摘要:【构造函数】 1、构造器就是创建对象时被调用的代码。 2、如果没有自定义构造器,那么编译器将自动合成一个默认的无参构造器。 3、自定义的构造器不允许加const,所创建const的对象只有在构造器代码执行完后,才被赋予const性质。 4、如果自定义了构造器,那么默认的构造器将无效化,可以理解为自定 阅读全文
posted @ 2017-04-06 14:09 xkfx 阅读(285) 评论(0) 推荐(0) 编辑
摘要:练习 7.6 & 7.7 7.8 read操作会改变对象的数据成员,而print操作仅仅是“访问”而不改变对象的数据成员。 7.9 7.10 读入两条数据。 阅读全文
posted @ 2017-04-05 15:19 xkfx 阅读(963) 评论(0) 推荐(0) 编辑
摘要:【设计Sales_data类】 1、考虑Sales_data类应该有那些接口。 isbn、combine、add、read、print... 2、考虑如何使用这些接口。 练习 7.1 【定义改进的Sales_data类】 this与const成员函数 1、可以通过return *this;返回对象本 阅读全文
posted @ 2017-04-04 10:20 xkfx 阅读(723) 评论(0) 推荐(0) 编辑
摘要:简单的示例: 遇到重载的情况,编译器通过指针类型精确匹配函数。 将函数作为参数: 返回类型不会自动地转换成指针,我们必须显示地将返回类型指定为指针,但是我想,除非是函数内部还可以构造函数(例如Python那样),否则返回函数也没什么用。 练习 6.54 6.55 & 6.56 输出结果: 阅读全文
posted @ 2017-04-03 10:52 xkfx 阅读(336) 评论(0) 推荐(0) 编辑
摘要:练习 6.49 候选函数:与所调用的函数的名字相同的函数的集合。 可行函数:给候选函数加上参数数量、参数类型的约束所得到的函数的集合。 6.50 a 3、4可行,二义匹配 b 2、4可行,2是最佳匹配 c 3、4可行,3是最佳匹配 d 3、4可行,4是最佳匹配 6.51 测试代码: 输出结果: 【实 阅读全文
posted @ 2017-04-02 09:21 xkfx 阅读(262) 评论(0) 推荐(0) 编辑
摘要:【默认实参】 1、注意点:函数的默认实参可以在函数的声明中添加,但是后续声明只能添加默认参数而不能改变先前声明的默认参数。(函数的声明通常是定义在头文件上的,多次声明同一个函数是合法的) 2、默认实参必须为全局变量,但是允许在局部改变这些变量的值,如果在局部重新声明将作为默认实参的变量,将不会有任何 阅读全文
posted @ 2017-03-31 14:01 xkfx 阅读(324) 评论(0) 推荐(0) 编辑
摘要:【函数重载】 Java中的重载一般是指重载构造器,或是子类覆写父类的方法;C++中的重载稍微复杂一些。 定义重载函数 典型的数据库应用。 判断两个形参类型是否相异 1、声明的时候省略形参和没省略是等价的。 2、起了类型别名也改变不了本质。 重载和const形参 1、一个拥有顶层const的形参无法和 阅读全文
posted @ 2017-03-26 13:30 xkfx 阅读(220) 评论(0) 推荐(0) 编辑
摘要:【无返回值函数】 1、在c++的void函数中,可以显式地使用return;语句来提前结束函数的调用。 【有返回值函数】 1、值是如何被返回的:返回一个值的方式和初始化一个变量或者形参的方式完全一样。 2、不要返回局部对象的引用或指针。 3、返回类类型的函数和调用运算符:调用运算符的优先级和点运算符 阅读全文
posted @ 2017-03-23 09:24 xkfx 阅读(1155) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示