Skip to content

jtcheng/TotW

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

TotW

这个仓库记录了Google Abseil TotW 的学习笔记,不是原文翻译。

Tip of the Week #1: string_view
Tip of the Week #3: String Concatenation and operator+ vs. StrCat()
Tip of the Week #10: Splitting Strings, not Hairs
Tip of the Week #11: Return Policy
Tip of the Week #24: Copies, Abbrv
Tip of the Week #36: New Join API
Tip of the Week #42: Prefer Factory Functions to Initializer Methods
Tip of the Week #45: Avoid Flags, Especially in Library Code
Tip of the Week #49: Argument-Dependent Lookup
Tip of the Week #55: Name Counting and unique_ptr

Tip of the Week #59: Joining Tuples
Tip of the Week #61: Default Member Initializers
Tip of the Week #64: Raw String Literals
Tip of the Week #65: Putting Things in their Place
Tip of the Week #74: Delegating and Inheriting Constructors
Tip of the Week #77: Temporaries, Moves, and Copies
Tip of the Week #86: Enumerating with Class
Tip of the Week #88: Initialization: =, (), and {}
Tip of the Week #90: Retired Flags
Tip of the Week #93: using absl::Span

Tip of the Week #94: Callsite Readability and bool Parameters
Tip of the Week #99: Nonmember Interface Etiquette
Tip of the Week #101: Return Values, References, and Lifetimes
Tip of the Week #103: Flags Are Globals
Tip of the Week #107: Reference Lifetime Extension
Tip of the Week #108: Avoid std::bind
Tip of the Week #109: Meaningful const in Function Declarations
Tip of the Week #112: emplace vs. push_back
Tip of the Week #117: Copy Elision and Pass-by-value
Tip of the Week #119: Using-declarations and namespace aliases

Tip of the Week #120: Return Values are Untouchable
Tip of the Week #122: Test Fixtures, Clarity, and Dataflow
Tip of the Week #123: absl::optional and std::unique_ptr
Tip of the Week #126: make_unique is the new new
Tip of the Week #130: Namespace Naming
Tip of the Week #131: Special Member Functions and = default
Tip of the Week #134: make_unique and private Constructors
Tip of the Week #135: Test the Contract, not the Implementation
Tip of the Week #136: Unordered Containers
Tip of the Week #141: Beware Implicit Conversions to bool

Tip of the Week #142: Multi-parameter Constructors and explicit
Tip of the Week #143: C++11 Deleted Functions (= delete)
Tip of the Week #144: Heterogeneous Lookup in Associative Containers
Tip of the Week #146: Default vs Value Initialization
Tip of the Week #147: Use Exhaustive switch Statements Responsibly
Tip of the Week #148: Overload Sets
Tip of the Week #149: Object Lifetimes vs. = delete
Tip of the Week #152: AbslHashValue and You
Tip of the Week #153: Don't Use using-directives
Tip of the Week #161: Good Locals and Bad Locals

Tip of the Week #163: Passing absl::optional parameters
Tip of the Week #166: When a Copy is not a Copy
Tip of the Week #168: inline Variables
Tip of the Week #171: Avoid Sentinel Values
Tip of the Week #172: Designated Initializers
Tip of the Week #173: Wrapping Arguments in Option Structs
Tip of the Week #175: Changes to Literal Constants in C++14 and C++17
Tip of the Week #176: Prefer Return Values to Output Parameters
Tip of the Week #177: Assignability vs. Data Member Types

About

Google Abseil TotW Learning Notes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published