Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所以JDK 最好下载 JDK 9以上的版本。67. 明智谨慎地进行优化关于优化有三个格言,每个人都应该知道:更多的计算上的过失是以效率的名义(不一定实现它)而不是任何其他单一原因——包括盲目做愚蠢的事情
转载 2023-07-12 15:04:11
51阅读
0.1.守则01:把C++看做一个语言的集合,而不是单一的语言 早期的C++只是叫"C with classes",但发展到今天已经成为一个多重泛型编程语言(Multi-paradigm programming language),它具有4种“子语言”:C 面向对象的C++ 模板C++ STL 0.
转载 2013-08-01 23:57:00
163阅读
2评论
Effective C++ 55 Specific Ways to Improve Your Programs and design1、让自己习惯C++。 Accustoming yourself to C++条款01:视C++为一个语言联邦。 View C++ as a federation of languages.条款02:尽量以const enum inline 替换 #define。 Prefer const,enum and inline to #define.条款03:尽可能使用const。 Use const whenever possible.条款04:确定对象被使用之前已被
转载 2013-10-01 00:57:00
157阅读
最近又重新看了Effective C+,不过到现在还是有好多地方不懂的,先记下笔记,待用的时候再细细琢磨。 条款1:尽量用const和inline而不用#define 这个条款最好称为:“尽量用编译器而不用预处理”,因为#define经常被认为好象不是语言本身的一部分。 用const的好处是,调试时,可以直接获取变量,而非定义的数字,这个在使用gdb跟踪代码的时候很有用,比如#define N
转载 2009-11-04 15:31:00
121阅读
2评论
读的是电子版,因为觉得对自己有提升的地方不多,觉得有帮助的都做了相关说明,其他的只是列举了书本的的标题,对于理解的,多说都是费话:Basics1>View c++ as a federation of languages2>Prefer consts、enums、and inlines to #defines3>Use const whenever possible4>Ma
c++
原创 2013-06-08 17:36:04
586阅读
34.将文件间的编译依赖性降到最低。 对于一个大型程序,其结构是错综复杂的。当你对一个类进行一些改动时。改动的不是接口,而是类的实现,即仅仅是一些细节部分,但又一次生成程序时,所实用到这个类的的文件都要又一次编译。这里题目指的是这个意思。但实际上,我在vs2012实践了一下,对于类B与类A相关联,类
转载 2017-08-16 13:09:00
98阅读
2评论
Effective C++笔记 -- 改善程序与设计的55个具体做法
原创 2021-12-29 14:17:14
166阅读
explicit关键字C++中的explicit关键字只能用于修饰只有一个参数或者是其他参数有默认值的类构造函数, 它的作用是表明该构造函数是显式的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).explicit关键字的作用就是防止类构造函数的隐式自动转换,防止隐式调用这个构造函数.上面也已经说过了, explic
转载 2022-12-12 12:00:04
131阅读
文章目录一、尽可能延后变量定义式的出现时间1、变量定义时间点的问题2、请记住二、尽量少做转型动作1、C++四种转型动作2、请记住三、避...
原创 2023-08-30 14:39:18
64阅读
一,让自己习惯c++        Accustoming Yourself to C++1,尽量以const, enum, inline替换#definePrefer consts and inlines to #defines.请记住对于单纯常量,最好以const对象或mums替换#defines。对于形似函数的宏(macros ),最好改用inline函数替换#def
原创 2021-08-18 02:47:23
217阅读
Chapter 1 Deducing Types Item 1: Understand template type deduction. Item 2: Understand auto type deduction. Item 3: Understand decltype. Ite...
转载 2014-12-10 16:53:00
270阅读
条款26:尽可能延后变量定义式的出现时间 当你定义一个变量的时候就要保证这个变量能够在程序中使用到,不要定义无意义的变量,这样就要求我们最好是在变量使用到的时候才做定义,因为如果一个变量定义了却不使用可能会造成效率上的降低,毕竟很多变量的构建是要调用对应的构造函数和析构函数的,考虑下面...
转载 2013-08-25 01:36:00
107阅读
2评论
Chapter 1 Deducing Types Item Item 3: Understand declt
原创 2023-06-09 16:29:44
76阅读
1.使用属性代替使用成员变量 2.使用readonly代替const // Compile time constant: public const int Millennium = 2000; // Runtime constant: public static readonly int ThisYear = 2004; 编译时常量在编译时,将用到该常量的地方都用它的值(200
原创 2011-06-14 23:42:00
1391阅读
1评论
本文是针对​​《Effective Objective-C》​​一书的代码解读,笔者并没有看过原书,只是通过阅读该书的​​代码​​,并结合相应的主题,来臆测作者可能要表达的内容并用自己的语言来描述出来。 Chapter 1: Accustoming Yourself to Objective-C Item 1: Familiarize Yourself with Objective-C's Ro
转载 2014-03-04 10:46:00
44阅读
2评论
公众号:畅游码海   这里有更多高质量原创文章和大量免费学习资料! Part1一、让自己习惯C++ 条款01:视C++为一个语言联邦C++并不是一个带有一组守则的一体语言:他是从四个次语言( C、Object-Oriented C++、Template、STL )  组成的联邦政府,每个次语言都有自己的规约。记住这四个次于语言你就会发现C++容易了解得多。条款02:尽
转载 2022-10-21 10:47:20
66阅读
条款二十三:宁以non-member、non-friend替换member函数本条款还是讨论封装的问题,举书上的例子:class WebBrower{public: void ClearCach(); void ClearHistory(); void RemoveCookies();};定义了一个WebBrower的类,里面执行对浏览器的清理工作,包...
原创 2023-06-01 17:18:52
74阅读
一.让自己习惯C++条款01:视C++为一个语言联邦 为了更好的理解C++,我们将C++分解为四个主要次语言:C。说到底C++仍是以C为基础。区块,语句,预处理器,内置数据类型,数组,指针统统来自C。Object-Oreinted C++。这一部分是面向对象设计之古典守则在C++上的最直接实施。类,...
原创 2021-08-04 10:09:08
155阅读
1,处理operator new内存分配失败的情况 #include using namespace std;template class newhandlersupport { //提供类set_new_handler支持的基类public: static new_handler set_new_handler(new_handler p); static void* ...
转载 2021-08-05 09:16:06
134阅读
Item 1: Prefer const and inline to #define.Item 2: Prefer to .Item 3: Prefer new and delete to malloc and free.Item 4: Prefer C++-style comments.Item 5: Use the same form in corresponding ...
转载 2021-08-05 09:16:24
98阅读
  • 1
  • 2
  • 3
  • 4
  • 5