-
读书笔记 effective c++ Item 25 实现一个不抛出异常的swap
1. swap如此重要Swap是一个非常有趣的函数,最初作为STL的一部分来介绍,它已然变成了异常安全编程的中流砥柱(Item 29),也是在拷贝中应对自我赋值的一种普通机制(Item 11)。Swap非常有用,恰当的实现swap是非常重要的,与重要性伴随而来的是一些并发症。在这个条款中,我们将探索这些并发症以及如何处理它们。2. s...
作者:小编 日期:2026.06.22 分类:算法 661 -
如何使用Graphics2D在一张图片上画线(包括箭头)
有这样一个需求,在一张图片上画几条线并保存,如图所示: 已知各个点的x,y坐标,坐标范围是[0.000,1],即将横纵方向分成1000份。 我们可以使用java.awt.Graphics2D的库来实现。 Graphics2D在Graphics类提供绘制各种基本的几何图形的基础上进行扩展,拥有更强大的二维图形处理能力,提供坐标转换、颜色管理以及文字布局等更精确的控制。Graphics2D类重要的属性包含以下几个 stroke属...
作者:小编 日期:2026.06.22 分类:文档 1246 -
读书笔记 effective c++ Item 24 如果函数的所有参数都需要类型转换,将其声明成非成员函数
1. 将需要隐式类型转换的函数声明为成员函数会出现问题使类支持隐式转换是一个坏的想法。当然也有例外的情况,最常见的一个例子就是数值类型。举个例子,如果你设计一个表示有理数的类,允许从整型到有理数的隐式转换应该是合理的。在C++内建类型中,从int转换到double也是再合理不过的了(比从double转换到int更加合理)。看下面的例子...
作者:小编 日期:2026.06.22 分类:工具 1820 -
读书笔记 effective c++ Item 23 宁可使用非成员非友元函数函数也不使用成员函数
1. 非成员非友元好还是成员函数好?想象一个表示web浏览器的类。这样一个类提供了清除下载缓存,清除URL访问历史,从系统中移除所有cookies等接口: 1 class WebBrowser { 2 3 public: 4 5 ... 6 7 void clearCache(); 8 9 void clearHistory...
作者:小编 日期:2026.06.22 分类:类库 300 -
【Leetcode_总结】152. 乘积最大子序列 - python
Q: 给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数)。 链接:https://leetcode-cn.com/problems/maximum-product-subarray/submissions/ 思路:使用动态规划的方法,与使用数组的方式不同,该问题使用一个最大值和最小值分别保存正数的最大值和负数的最小值 代码: class Solution(object): def ma...
作者:小编 日期:2026.06.22 分类:手册 1937 -
读书笔记 effective c++ Item 22 将数据成员声明成private
我们首先看一下为什么数据成员不应该是public的,然后我们将会看到应用在public数据成员上的论证同样适用于protected成员。最后够得出结论:数据成员应该是private的。1. 为什么数据成员不能是public的?为什么数据成员不能够是public的?2.1 一致性让我们从句法的一致性开始(Item 18)。如果数据成员不...
作者:小编 日期:2026.06.22 分类:算法 833 -
Android--Touch事件
【转】Android onTouch()和onTouchEvent()区别 1、onTouch()方法: onTouch方式是View的OnTouchListener接口中定义的方法。 当一个View绑定了OnTouchListener后,当有Touch事件触发时,就会调用onTouch方法。 (当把手放到View上后,onTouch方法被一遍一遍的调用) 2、onTo...
作者:小编 日期:2026.06.22 分类:算法 1087 -
读书笔记 effective c++ Item 21 当你必须返回一个对象的时候,不要尝试返回引用
1. 问题的提出:要求函数返回对象时,可以返回引用么?一旦程序员理解了按值传递有可能存在效率问题之后(Item 20),许多人都成了十字军战士,决心清除所有隐藏的按值传递所引起的开销。对纯净的按引用传递(不需要额外的构造或者析构)的追求丝毫没有懈怠,但他们的始终如一会产生致命的错误:它们开始传递指向并不存在的对象的引用。这可不是好事情...
作者:小编 日期:2026.06.22 分类:语言 460 -
读书笔记 effctive c++ Item 20 优先使用按const-引用传递(by-reference-to-const)而不是按值传递(by value)
1. 按值传递参数会有效率问题默认情况下,C++向函数传入或者从函数传出对象都是按值传递(pass by value)(从C继承过来的典型特性)。除非你指定其他方式,函数参数会用实际参数值的拷贝进行初始化,函数调用者会获得函数返回值的一份拷贝。这些拷贝由对象的拷贝构造函数生成。这使得按值传递(pass-by-value)变成一项昂贵的...
作者:小编 日期:2026.06.22 分类:手册 1447







