C++14 FAQs (Paperback)

Chandra Shekhar Kumar

  • 出版商: CreateSpace Independ
  • 出版日期: 2014-06-19
  • 售價: $630
  • 貴賓價: 9.5$599
  • 語言: 英文
  • 頁數: 104
  • 裝訂: Paperback
  • ISBN: 1500239879
  • ISBN-13: 9781500239879
  • 相關分類: C++ 程式語言
  • 海外代購書籍(需單獨結帳)

買這商品的人也買了...

相關主題

商品描述

This book contains selected questions related to C++14 with detailed solutions to all of these which will help the reader to hone her skills to solve a particular problem.

Primary sources of this collection are:

  1. Advanced C++ FAQs: Volume 1 : Fundamentals
  2. Advanced C++ FAQs: Volume 2 : Generic Programming
  3. Advanced C++ FAQs: Volumes 1 & 2

This book is not an introduction to C++. It assumes that the reader is aware of the basics of C++98 and C++03 and wants to expand her horizon to latest and greatest in C++14(aka C++1y). The problems are marked on a scale of one(*)(simplest) to five stars(*****)(hardest). Forthcoming volumes will strengthen this particular approach spanning various areas of C++.
 

  • variable templates
  • Constexpr static data members of class templates
  • constexpr function templates
  • ....

  • static data member template
  • specialization of variable template
  • default argument and specialization of variable template
  • lambda and variable template
  • variable templates variables vary
  • auto variable templates
  • valid specialization but error ?
  • variable templates and lambda revisited
  • Incremental improvement to integral constant
  • is same musings
  • auto variable template and generic lambda
  • constexpr member functions and implicit const
  • ....

  • constexpr vs static vs uninitialized
  • constexpr vs member function revisited
  • deprecated attribute
  • Member initializers and aggregate class
  • ....

  • Data Member initializers
  • time duration literals
  • ...

  • Compile Time binary Literal Operator
  • Square Literal Operator
  • Type Transformation Aliases
  • unique ptr vs make unique as function argument
  • make unique as perfect forwarding guy
  • make unique and new
  • ....

  • make unique and default initialization with T[]
  • Extend make unique : Support list initialization T[]
  • Extend make unique : Value Initialize T[]
  • Extend make unique : T[N]
  • allocate unique
  • Compile-time integer sequences
  • Simplified Creation of std::integer sequence
  • std::index sequence
  • Custom Sequence : Addition
  • ....

  • Custom Sequence : Split
  • Extract from tuple
  • convert std::array to std::tuple
  • Piecewise construction of std::pair
  • Compile Time Integer Sequence Simplified
  • sfinae and represent type of function
  • metafunction : check presence of type member
  • std::common type and sfinae
  • Contextual Conversion
  • Single quotation mark as digit separator
  • Binary Literals
  • auto return type in function declaration
  • return type deduction for function
  • return type deduction for lambdas
  • ....

  • decltype(auto)
  • return type deduction for function templates
  • explicit instantiation and auto
  • return type deduction and virtual
  • deduce return type
  • generalized lambda capture
  • generic lambda and product vector
  • generic lambda
  • generic lambda definition
  • conversion function of generic lambda
  • generic lambda quiz
  • Preventing Name Hijacking
  • Find First Null Pointer in a Container
  • Generic Operator Functors
  • Exchange Utility
  • Addressing Tuple By Type
  • Quoted manipulators
  • Null Iterator
  • std::move is rvalue cast
  • C++14 Compiler

商品描述(中文翻譯)

這本書包含了與C++14相關的精選問題,並提供了詳細的解答,幫助讀者磨練解決特定問題的能力。

這個問題集的主要來源如下:
1. Advanced C++ FAQs: Volume 1 : Fundamentals
2. Advanced C++ FAQs: Volume 2 : Generic Programming
3. Advanced C++ FAQs: Volumes 1 & 2

這本書不是C++的入門書,假設讀者已經熟悉C++98和C++03的基礎知識,並希望擴展她在C++14(也稱為C++1y)中的知識。這些問題根據難度從一顆星(最簡單)到五顆星(最難)進行標記。未來的卷會加強這種特定的方法,涵蓋C++的各個領域。

以下是一些問題的主題:
- 變數模板
- 類模板的constexpr靜態數據成員
- constexpr函數模板
- ...
- 靜態數據成員模板
- 變數模板的特化
- 變數模板的默認參數和特化
- lambda和變數模板
- 變數模板的變化
- auto變數模板
- 合法的特化但出錯?
- 變數模板和lambda的再討論
- 對整數常量的增量改進
- is_same的思考
- auto變數模板和通用lambda
- constexpr成員函數和隱式const
- ...
- constexpr vs static vs uninitialized
- constexpr vs成員函數的再討論
- 廢棄屬性
- 成員初始化和聚合類
- ...
- 數據成員初始化
- 時間持續文字
- ...
- 編譯時二進制文字運算符
- 平方文字運算符
- 類型轉換別名
- unique_ptr vs make_unique作為函數參數
- make_unique作為完美轉發的方式
- make_unique和new
- ...
- make_unique和使用T[]進行默認初始化
- 擴展make_unique:支持使用T[]進行列表初始化
- 擴展make_unique:值初始化T[]
- 擴展make_unique:T[N]
- 分配unique
- 編譯時整數序列
- 簡化std::integer序列的創建
- std::index序列
- 自定義序列:加法
- ...
- 自定義序列:分割
- 從tuple中提取
- 將std::array轉換為std::tuple
- 構造std::pair的分段
- 編譯時整數序列簡化
- sfinae和表示函數的類型
- 元函數:檢查類型成員的存在
- std::common_type和sfinae
- 上下文轉換
- 單引號作為數字分隔符
- 二進制文字
- 函數聲明中的自動返回類型
- 函數的返回類型推斷
- lambda的返回類型推斷
- ...
- decltype(auto)
- 函數模板的返回類型推斷
- 明確實例化和auto
- 返回類型推斷和虛擬
- 推斷返回類型
- 通用lambda捕獲
- 通用lambda和向量乘法
- 通用lambda
- 通用lambda定義
- 通用lambda的轉換函數
- 通用lambda測驗
- 防止名稱劫持
- 在容器中找到第一個空指針
- 通用操作符函子
- 交換實用程序
- 按類型訪問tuple
- 引用操縱符
- 空迭代器
- std::move是右值轉換
- C++14編譯器