René's URL Explorer Experiment


Title: GitHub - tch0/CppTemplateProgramming: Learn about C++ template programming, based on the book 2nd edition.

Open Graph Title: GitHub - tch0/CppTemplateProgramming: Learn about C++ template programming, based on the book 2nd edition.

X Title: GitHub - tch0/CppTemplateProgramming: Learn about C++ template programming, based on the book 2nd edition.

Description: Learn about C++ template programming, based on the book 2nd edition. - tch0/CppTemplateProgramming

Open Graph Description: Learn about C++ template programming, based on the book 2nd edition. - tch0/CppTemplateProgramming

X Description: Learn about C++ template programming, based on the book 2nd edition. - tch0/CppTemplateProgramming

Opengraph URL: https://github.com/tch0/CppTemplateProgramming

X: @github

direct link

Domain: patch-diff.githubusercontent.com

route-pattern/:user_id/:repository
route-controllerfiles
route-actiondisambiguate
fetch-noncev2:c0a93f69-a5b1-7a1b-504c-2abc05d4afb2
current-catalog-service-hashf3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb
request-idAD22:3EBE6:57FA4:6B21F:69801C0D
html-safe-nonce3945cbf727f31715b78ecd0e0617f63b0ee207fbcfc86e63d8ad983238e9f2dc
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBRDIyOjNFQkU2OjU3RkE0OjZCMjFGOjY5ODAxQzBEIiwidmlzaXRvcl9pZCI6IjQ1MTc0ODgxMzE3NDE1ODg0OTMiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac5d0789a2dd9433c13447a4f01b22318fc2ebc39b5307e6836a4a3b255ffbbfab
hovercard-subject-tagrepository:532914310
github-keyboard-shortcutsrepository,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location//
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/tch0/CppTemplateProgramming
twitter:imagehttps://opengraph.githubassets.com/7b230faa91cd43759cc7610b4a9cc30e06b5df8c0260dde66ce20845dd02148b/tch0/CppTemplateProgramming
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/7b230faa91cd43759cc7610b4a9cc30e06b5df8c0260dde66ce20845dd02148b/tch0/CppTemplateProgramming
og:image:altLearn about C++ template programming, based on the book 2nd edition. - tch0/CppTemplateProgramming
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None60279d4097367e16897439d16d6bbe4180663db828c666eeed2656988ffe59f6
turbo-cache-controlno-preview
go-importgithub.com/tch0/CppTemplateProgramming git https://github.com/tch0/CppTemplateProgramming.git
octolytics-dimension-user_id20532322
octolytics-dimension-user_logintch0
octolytics-dimension-repository_id532914310
octolytics-dimension-repository_nwotch0/CppTemplateProgramming
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id532914310
octolytics-dimension-repository_network_root_nwotch0/CppTemplateProgramming
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7c85641c598ad130c74f7bcc27f58575cac69551
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Ftch0%2FCppTemplateProgramming
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Ftch0%2FCppTemplateProgramming
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E&source=header-repo&source_repo=tch0%2FCppTemplateProgramming
Reloadhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
Reloadhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
Reloadhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
tch0 https://patch-diff.githubusercontent.com/tch0
CppTemplateProgramminghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Ftch0%2FCppTemplateProgramming
Fork 0 https://patch-diff.githubusercontent.com/login?return_to=%2Ftch0%2FCppTemplateProgramming
Star 0 https://patch-diff.githubusercontent.com/login?return_to=%2Ftch0%2FCppTemplateProgramming
WTFPL license https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/LICENSE
0 stars https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/stargazers
0 forks https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/forks
Branches https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/branches
Tags https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tags
Activity https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/activity
Star https://patch-diff.githubusercontent.com/login?return_to=%2Ftch0%2FCppTemplateProgramming
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Ftch0%2FCppTemplateProgramming
Code https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
Issues 0 https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/issues
Pull requests 0 https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/pulls
Actions https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/actions
Projects 0 https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/projects
Security 0 https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/security
Insights https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/pulse
Code https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
Issues https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/issues
Pull requests https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/pulls
Actions https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/actions
Projects https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/projects
Security https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/security
Insights https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/pulse
Brancheshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/branches
Tagshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tags
https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/branches
https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tags
42 Commitshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/commits/master/
https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/commits/master/
.vscodehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/.vscode
.vscodehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/.vscode
01FunctionTemplatehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/01FunctionTemplate
01FunctionTemplatehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/01FunctionTemplate
02ClassTemplatehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/02ClassTemplate
02ClassTemplatehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/02ClassTemplate
03NonTypeTemplateParametershttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/03NonTypeTemplateParameters
03NonTypeTemplateParametershttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/03NonTypeTemplateParameters
04VariadicTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/04VariadicTemplates
04VariadicTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/04VariadicTemplates
05TrickyBasicshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/05TrickyBasics
05TrickyBasicshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/05TrickyBasics
06MoveSemanticsAndEnableIfhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/06MoveSemanticsAndEnableIf
06MoveSemanticsAndEnableIfhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/06MoveSemanticsAndEnableIf
07ByValueOrByReferencehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/07ByValueOrByReference
07ByValueOrByReferencehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/07ByValueOrByReference
08CompileTimeProgramminghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/08CompileTimeProgramming
08CompileTimeProgramminghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/08CompileTimeProgramming
09UsingTemplatesInPracticehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/09UsingTemplatesInPractice
09UsingTemplatesInPracticehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/09UsingTemplatesInPractice
10BasicTemplateTerminologyhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/10BasicTemplateTerminology
10BasicTemplateTerminologyhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/10BasicTemplateTerminology
11GenericLibrarieshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/11GenericLibraries
11GenericLibrarieshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/11GenericLibraries
12TemplatesInDepthhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/12TemplatesInDepth
12TemplatesInDepthhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/12TemplatesInDepth
13NamesInTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/13NamesInTemplates
13NamesInTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/13NamesInTemplates
14Instantiationhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/14Instantiation
14Instantiationhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/14Instantiation
15TemplateArgumentsDeductionhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/15TemplateArgumentsDeduction
15TemplateArgumentsDeductionhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/15TemplateArgumentsDeduction
16SpecializationAndOverloadinghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/16SpecializationAndOverloading
16SpecializationAndOverloadinghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/16SpecializationAndOverloading
17FutureDirectionshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/17FutureDirections
17FutureDirectionshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/17FutureDirections
18PolymorphicOfTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/18PolymorphicOfTemplates
18PolymorphicOfTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/18PolymorphicOfTemplates
19ImplementingTraitshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/19ImplementingTraits
19ImplementingTraitshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/19ImplementingTraits
20OverloadingOnTypePropertieshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/20OverloadingOnTypeProperties
20OverloadingOnTypePropertieshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/20OverloadingOnTypeProperties
21TemplatesAndInheritancehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/21TemplatesAndInheritance
21TemplatesAndInheritancehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/21TemplatesAndInheritance
22BridgingStaticAndDynamicPolymorphismhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/22BridgingStaticAndDynamicPolymorphism
22BridgingStaticAndDynamicPolymorphismhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/22BridgingStaticAndDynamicPolymorphism
23Metaprogramminghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/23Metaprogramming
23Metaprogramminghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/23Metaprogramming
24Typelistshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/24Typelists
24Typelistshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/24Typelists
25Tupleshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/25Tuples
25Tupleshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/25Tuples
26DiscriminatedUnionshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/26DiscriminatedUnions
26DiscriminatedUnionshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/26DiscriminatedUnions
27ExpressionTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/27ExpressionTemplates
27ExpressionTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/27ExpressionTemplates
28DebuggingTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/28DebuggingTemplates
28DebuggingTemplateshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/28DebuggingTemplates
AppendixAhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/AppendixA
AppendixAhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/AppendixA
AppendixEhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/AppendixE
AppendixEhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/tree/master/AppendixE
.editorconfighttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/.editorconfig
.editorconfighttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/.editorconfig
.gitignorehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/.gitignore
.gitignorehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/.gitignore
CppTemplate1.mkhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/CppTemplate1.mk
CppTemplate1.mkhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/CppTemplate1.mk
CppTemplate2.mkhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/CppTemplate2.mk
CppTemplate2.mkhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/CppTemplate2.mk
LICENSEhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/LICENSE
LICENSEhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/LICENSE
README.mdhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/README.md
README.mdhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/README.md
READMEhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
WTFPL licensehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming#c模板编程学习
C++ Templates 2nd Editionhttps://book.douban.com/subject/30226708/
第一章:函数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate
第二章:类模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate
第三章:非类型模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/03NonTypeTemplateParameters
第四章:可变参数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates
第五章:模板基础技术https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics
第六章:移动语义与enable_if<>https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf
第七章:值传递还是引用传递?https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference
第八章:编译期编程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming
第九章:在实战中使用模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice
第十章:基本模板术语https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology
第十一章:泛型库https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries
第十二章:深入模板基础https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth
第十三章:模板中的名称https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/13NamesInTemplates
第十四章:实例化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation
第十五章:模板实参推导https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction
第十六章:特化与重载https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading
第十七章:未来发展方向https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections
第十八章:模板的多态性https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates
第十九章:特征的实现https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits
第二十章:类型属性上的重载https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties
第二十一章:模板与继承https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/21TemplatesAndInheritance
第二十二章:桥接静态和动态多态https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism
第二十三章:元编程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming
第二十四章:Typelistshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists
第二十五章:元组https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples
第二十六章:可识别的联合https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions
第二十七章:表达式模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/27ExpressionTemplates
第二十八章:调试模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates
附录A:一个定义原则https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixA
附录E:概念https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE
第一章 函数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E7%AC%AC%E4%B8%80%E7%AB%A0-%E5%87%BD%E6%95%B0%E6%A8%A1%E6%9D%BF
概览https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E6%A6%82%E8%A7%88
模板参数推导https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0%E6%8E%A8%E5%AF%BC
多个模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E5%A4%9A%E4%B8%AA%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
默认模板实参https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E9%BB%98%E8%AE%A4%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82
重载函数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E9%87%8D%E8%BD%BD%E5%87%BD%E6%95%B0%E6%A8%A1%E6%9D%BF
一些问题https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E4%B8%80%E4%BA%9B%E9%97%AE%E9%A2%98
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/01FunctionTemplate#%E6%80%BB%E7%BB%93
第二章:类模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E7%AC%AC%E4%BA%8C%E7%AB%A0%E7%B1%BB%E6%A8%A1%E6%9D%BF
定义类模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E5%AE%9A%E4%B9%89%E7%B1%BB%E6%A8%A1%E6%9D%BF
使用类模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E4%BD%BF%E7%94%A8%E7%B1%BB%E6%A8%A1%E6%9D%BF
部分使用类模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E9%83%A8%E5%88%86%E4%BD%BF%E7%94%A8%E7%B1%BB%E6%A8%A1%E6%9D%BF
友元https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E5%8F%8B%E5%85%83
类模板特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E7%B1%BB%E6%A8%A1%E6%9D%BF%E7%89%B9%E5%8C%96
类模板偏特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E7%B1%BB%E6%A8%A1%E6%9D%BF%E5%81%8F%E7%89%B9%E5%8C%96
默认类模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E9%BB%98%E8%AE%A4%E7%B1%BB%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
类型别名https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E7%B1%BB%E5%9E%8B%E5%88%AB%E5%90%8D
类模板实参推导https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E7%B1%BB%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82%E6%8E%A8%E5%AF%BC
模板化聚合类https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E6%A8%A1%E6%9D%BF%E5%8C%96%E8%81%9A%E5%90%88%E7%B1%BB
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/02ClassTemplate#%E6%80%BB%E7%BB%93
第三章:非类型模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/03NonTypeTemplateParameters#%E7%AC%AC%E4%B8%89%E7%AB%A0%E9%9D%9E%E7%B1%BB%E5%9E%8B%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
非类型类模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/03NonTypeTemplateParameters#%E9%9D%9E%E7%B1%BB%E5%9E%8B%E7%B1%BB%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
非类型函数模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/03NonTypeTemplateParameters#%E9%9D%9E%E7%B1%BB%E5%9E%8B%E5%87%BD%E6%95%B0%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
非类型模板参数的限制https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/03NonTypeTemplateParameters#%E9%9D%9E%E7%B1%BB%E5%9E%8B%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0%E7%9A%84%E9%99%90%E5%88%B6
模板参数类型autohttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/03NonTypeTemplateParameters#%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0%E7%B1%BB%E5%9E%8Bauto
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/03NonTypeTemplateParameters#%E6%80%BB%E7%BB%93
第四章:可变参数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates#%E7%AC%AC%E5%9B%9B%E7%AB%A0%E5%8F%AF%E5%8F%98%E5%8F%82%E6%95%B0%E6%A8%A1%E6%9D%BF
可变参数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates#%E5%8F%AF%E5%8F%98%E5%8F%82%E6%95%B0%E6%A8%A1%E6%9D%BF
折叠表达式https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates#%E6%8A%98%E5%8F%A0%E8%A1%A8%E8%BE%BE%E5%BC%8F
折叠表达式实用技巧https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates#%E6%8A%98%E5%8F%A0%E8%A1%A8%E8%BE%BE%E5%BC%8F%E5%AE%9E%E7%94%A8%E6%8A%80%E5%B7%A7
可变参数模板应用https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates#%E5%8F%AF%E5%8F%98%E5%8F%82%E6%95%B0%E6%A8%A1%E6%9D%BF%E5%BA%94%E7%94%A8
可变类模板参数与可变参数表达式https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates#%E5%8F%AF%E5%8F%98%E7%B1%BB%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0%E4%B8%8E%E5%8F%AF%E5%8F%98%E5%8F%82%E6%95%B0%E8%A1%A8%E8%BE%BE%E5%BC%8F
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/04VariadicTemplates#%E6%80%BB%E7%BB%93
第五章:模板基础技术https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E7%AC%AC%E4%BA%94%E7%AB%A0%E6%A8%A1%E6%9D%BF%E5%9F%BA%E7%A1%80%E6%8A%80%E6%9C%AF
typename关键字https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#typename%E5%85%B3%E9%94%AE%E5%AD%97
零初始化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E9%9B%B6%E5%88%9D%E5%A7%8B%E5%8C%96
使用this->https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E4%BD%BF%E7%94%A8this-
为内建数组和字符串字面值重载或特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E4%B8%BA%E5%86%85%E5%BB%BA%E6%95%B0%E7%BB%84%E5%92%8C%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%AD%97%E9%9D%A2%E5%80%BC%E9%87%8D%E8%BD%BD%E6%88%96%E7%89%B9%E5%8C%96
成员模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E6%88%90%E5%91%98%E6%A8%A1%E6%9D%BF
变量模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E5%8F%98%E9%87%8F%E6%A8%A1%E6%9D%BF
模板模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E6%A8%A1%E6%9D%BF%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/05TrickyBasics#%E6%80%BB%E7%BB%93
第六章:移动语义与enable_if<>https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf#%E7%AC%AC%E5%85%AD%E7%AB%A0%E7%A7%BB%E5%8A%A8%E8%AF%AD%E4%B9%89%E4%B8%8Eenable_if
完美转发https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf#%E5%AE%8C%E7%BE%8E%E8%BD%AC%E5%8F%91
特殊的成员函数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf#%E7%89%B9%E6%AE%8A%E7%9A%84%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0%E6%A8%A1%E6%9D%BF
使用enable_if<>禁用模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf#%E4%BD%BF%E7%94%A8enable_if%E7%A6%81%E7%94%A8%E6%A8%A1%E6%9D%BF
使用enable_if<>https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf#%E4%BD%BF%E7%94%A8enable_if
使用concept简化enable_if表达式https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf#%E4%BD%BF%E7%94%A8concept%E7%AE%80%E5%8C%96enable_if%E8%A1%A8%E8%BE%BE%E5%BC%8F
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/06MoveSemanticsAndEnableIf#%E6%80%BB%E7%BB%93
第七章:值传递还是引用传递?https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E7%AC%AC%E4%B8%83%E7%AB%A0%E5%80%BC%E4%BC%A0%E9%80%92%E8%BF%98%E6%98%AF%E5%BC%95%E7%94%A8%E4%BC%A0%E9%80%92
值传递https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E5%80%BC%E4%BC%A0%E9%80%92
引用传递https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E5%BC%95%E7%94%A8%E4%BC%A0%E9%80%92
使用std::ref()和std::cref()https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E4%BD%BF%E7%94%A8stdref%E5%92%8Cstdcref
处理字符串字面量和内建数组https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E5%A4%84%E7%90%86%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%AD%97%E9%9D%A2%E9%87%8F%E5%92%8C%E5%86%85%E5%BB%BA%E6%95%B0%E7%BB%84
处理返回值https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E5%A4%84%E7%90%86%E8%BF%94%E5%9B%9E%E5%80%BC
模板参数声明实践建议https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0%E5%A3%B0%E6%98%8E%E5%AE%9E%E8%B7%B5%E5%BB%BA%E8%AE%AE
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/07ByValueOrByReference#%E6%80%BB%E7%BB%93
第八章:编译期编程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming#%E7%AC%AC%E5%85%AB%E7%AB%A0%E7%BC%96%E8%AF%91%E6%9C%9F%E7%BC%96%E7%A8%8B
模板元编程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming#%E6%A8%A1%E6%9D%BF%E5%85%83%E7%BC%96%E7%A8%8B
使用constexpr计算https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming#%E4%BD%BF%E7%94%A8constexpr%E8%AE%A1%E7%AE%97
偏特化的路径选择https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming#%E5%81%8F%E7%89%B9%E5%8C%96%E7%9A%84%E8%B7%AF%E5%BE%84%E9%80%89%E6%8B%A9
SFINAE/替换失败不是错误https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming#sfinae%E6%9B%BF%E6%8D%A2%E5%A4%B1%E8%B4%A5%E4%B8%8D%E6%98%AF%E9%94%99%E8%AF%AF
编译期ifhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming#%E7%BC%96%E8%AF%91%E6%9C%9Fif
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/08CompileTimeProgramming#%E6%80%BB%E7%BB%93
第九章:在实战中使用模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice#%E7%AC%AC%E4%B9%9D%E7%AB%A0%E5%9C%A8%E5%AE%9E%E6%88%98%E4%B8%AD%E4%BD%BF%E7%94%A8%E6%A8%A1%E6%9D%BF
包含模型https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice#%E5%8C%85%E5%90%AB%E6%A8%A1%E5%9E%8B
模板和inlinehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice#%E6%A8%A1%E6%9D%BF%E5%92%8Cinline
预编译头文件https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice#%E9%A2%84%E7%BC%96%E8%AF%91%E5%A4%B4%E6%96%87%E4%BB%B6
破译大篇幅错误信息https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice#%E7%A0%B4%E8%AF%91%E5%A4%A7%E7%AF%87%E5%B9%85%E9%94%99%E8%AF%AF%E4%BF%A1%E6%81%AF
本章后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice#%E6%9C%AC%E7%AB%A0%E5%90%8E%E8%AE%B0
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/09UsingTemplatesInPractice#%E6%80%BB%E7%BB%93
第十章:基本模板术语https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology#%E7%AC%AC%E5%8D%81%E7%AB%A0%E5%9F%BA%E6%9C%AC%E6%A8%A1%E6%9D%BF%E6%9C%AF%E8%AF%AD
类模板还是模板类?https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology#%E7%B1%BB%E6%A8%A1%E6%9D%BF%E8%BF%98%E6%98%AF%E6%A8%A1%E6%9D%BF%E7%B1%BB
替换、实例化、特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology#%E6%9B%BF%E6%8D%A2%E5%AE%9E%E4%BE%8B%E5%8C%96%E7%89%B9%E5%8C%96
声明与定义https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology#%E5%A3%B0%E6%98%8E%E4%B8%8E%E5%AE%9A%E4%B9%89
一个定义原则(One Definition Rule)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology#%E4%B8%80%E4%B8%AA%E5%AE%9A%E4%B9%89%E5%8E%9F%E5%88%99one-definition-rule
模板实参与模板形参https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology#%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82%E4%B8%8E%E6%A8%A1%E6%9D%BF%E5%BD%A2%E5%8F%82
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/10BasicTemplateTerminology#%E6%80%BB%E7%BB%93
第十一章:泛型库https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E7%AC%AC%E5%8D%81%E4%B8%80%E7%AB%A0%E6%B3%9B%E5%9E%8B%E5%BA%93
可调用对象https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E5%8F%AF%E8%B0%83%E7%94%A8%E5%AF%B9%E8%B1%A1
实现泛型库的其他实用组件https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E5%AE%9E%E7%8E%B0%E6%B3%9B%E5%9E%8B%E5%BA%93%E7%9A%84%E5%85%B6%E4%BB%96%E5%AE%9E%E7%94%A8%E7%BB%84%E4%BB%B6
完美转发临时对象https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E5%AE%8C%E7%BE%8E%E8%BD%AC%E5%8F%91%E4%B8%B4%E6%97%B6%E5%AF%B9%E8%B1%A1
引用作为模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E5%BC%95%E7%94%A8%E4%BD%9C%E4%B8%BA%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
延迟求值https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E5%BB%B6%E8%BF%9F%E6%B1%82%E5%80%BC
编写泛型库时需要考虑的问题https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E7%BC%96%E5%86%99%E6%B3%9B%E5%9E%8B%E5%BA%93%E6%97%B6%E9%9C%80%E8%A6%81%E8%80%83%E8%99%91%E7%9A%84%E9%97%AE%E9%A2%98
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/11GenericLibraries#%E6%80%BB%E7%BB%93
第十二章:深入模板基础https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth#%E7%AC%AC%E5%8D%81%E4%BA%8C%E7%AB%A0%E6%B7%B1%E5%85%A5%E6%A8%A1%E6%9D%BF%E5%9F%BA%E7%A1%80
参数化声明https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth#%E5%8F%82%E6%95%B0%E5%8C%96%E5%A3%B0%E6%98%8E
模板形参https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth#%E6%A8%A1%E6%9D%BF%E5%BD%A2%E5%8F%82
模板实参https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth#%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82
可变参数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth#%E5%8F%AF%E5%8F%98%E5%8F%82%E6%95%B0%E6%A8%A1%E6%9D%BF
友元https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth#%E5%8F%8B%E5%85%83
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/12TemplatesInDepth#%E5%90%8E%E8%AE%B0
第十三章:模板中的名称https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/13NamesInTemplates#%E7%AC%AC%E5%8D%81%E4%B8%89%E7%AB%A0%E6%A8%A1%E6%9D%BF%E4%B8%AD%E7%9A%84%E5%90%8D%E7%A7%B0
名称分类https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/13NamesInTemplates#%E5%90%8D%E7%A7%B0%E5%88%86%E7%B1%BB
名称查找https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/13NamesInTemplates#%E5%90%8D%E7%A7%B0%E6%9F%A5%E6%89%BE
解析模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/13NamesInTemplates#%E8%A7%A3%E6%9E%90%E6%A8%A1%E6%9D%BF
继承与类模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/13NamesInTemplates#%E7%BB%A7%E6%89%BF%E4%B8%8E%E7%B1%BB%E6%A8%A1%E6%9D%BF
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/13NamesInTemplates#%E5%90%8E%E8%AE%B0
第十四章:实例化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E7%AC%AC%E5%8D%81%E5%9B%9B%E7%AB%A0%E5%AE%9E%E4%BE%8B%E5%8C%96
按需实例化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E6%8C%89%E9%9C%80%E5%AE%9E%E4%BE%8B%E5%8C%96
延迟实例化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E5%BB%B6%E8%BF%9F%E5%AE%9E%E4%BE%8B%E5%8C%96
C++实例化模型https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#c%E5%AE%9E%E4%BE%8B%E5%8C%96%E6%A8%A1%E5%9E%8B
实现方案https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E5%AE%9E%E7%8E%B0%E6%96%B9%E6%A1%88
显式实例化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E6%98%BE%E5%BC%8F%E5%AE%9E%E4%BE%8B%E5%8C%96
编译期ifhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E7%BC%96%E8%AF%91%E6%9C%9Fif
标准库中的实例化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E6%A0%87%E5%87%86%E5%BA%93%E4%B8%AD%E7%9A%84%E5%AE%9E%E4%BE%8B%E5%8C%96
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/14Instantiation#%E5%90%8E%E8%AE%B0
第十五章:模板实参推导https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E7%AC%AC%E5%8D%81%E4%BA%94%E7%AB%A0%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82%E6%8E%A8%E5%AF%BC
推导过程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E6%8E%A8%E5%AF%BC%E8%BF%87%E7%A8%8B
推导上下文https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E6%8E%A8%E5%AF%BC%E4%B8%8A%E4%B8%8B%E6%96%87
特殊推导情况https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E7%89%B9%E6%AE%8A%E6%8E%A8%E5%AF%BC%E6%83%85%E5%86%B5
初始化列表https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E5%88%9D%E5%A7%8B%E5%8C%96%E5%88%97%E8%A1%A8
形参包https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E5%BD%A2%E5%8F%82%E5%8C%85
右值引用https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E5%8F%B3%E5%80%BC%E5%BC%95%E7%94%A8
SFINAEhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#sfinae
推导的限制https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E6%8E%A8%E5%AF%BC%E7%9A%84%E9%99%90%E5%88%B6
显式函数模板实参https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E6%98%BE%E5%BC%8F%E5%87%BD%E6%95%B0%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82
从初始化器和表达式中推导https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E4%BB%8E%E5%88%9D%E5%A7%8B%E5%8C%96%E5%99%A8%E5%92%8C%E8%A1%A8%E8%BE%BE%E5%BC%8F%E4%B8%AD%E6%8E%A8%E5%AF%BC
别名模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E5%88%AB%E5%90%8D%E6%A8%A1%E6%9D%BF
类模板实参推导https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E7%B1%BB%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82%E6%8E%A8%E5%AF%BC
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/15TemplateArgumentsDeduction#%E5%90%8E%E8%AE%B0
第十六章:特化与重载https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading#%E7%AC%AC%E5%8D%81%E5%85%AD%E7%AB%A0%E7%89%B9%E5%8C%96%E4%B8%8E%E9%87%8D%E8%BD%BD
当泛型代码不能很好解决问题时https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading#%E5%BD%93%E6%B3%9B%E5%9E%8B%E4%BB%A3%E7%A0%81%E4%B8%8D%E8%83%BD%E5%BE%88%E5%A5%BD%E8%A7%A3%E5%86%B3%E9%97%AE%E9%A2%98%E6%97%B6
重载函数模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading#%E9%87%8D%E8%BD%BD%E5%87%BD%E6%95%B0%E6%A8%A1%E6%9D%BF
显式特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading#%E6%98%BE%E5%BC%8F%E7%89%B9%E5%8C%96
类模板偏特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading#%E7%B1%BB%E6%A8%A1%E6%9D%BF%E5%81%8F%E7%89%B9%E5%8C%96
变量模板偏特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading#%E5%8F%98%E9%87%8F%E6%A8%A1%E6%9D%BF%E5%81%8F%E7%89%B9%E5%8C%96
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/16SpecializationAndOverloading#%E5%90%8E%E8%AE%B0
第十七章:未来发展方向https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E7%AC%AC%E5%8D%81%E4%B8%83%E7%AB%A0%E6%9C%AA%E6%9D%A5%E5%8F%91%E5%B1%95%E6%96%B9%E5%90%91
宽松的typename规则https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E5%AE%BD%E6%9D%BE%E7%9A%84typename%E8%A7%84%E5%88%99
更宽泛的非类型模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E6%9B%B4%E5%AE%BD%E6%B3%9B%E7%9A%84%E9%9D%9E%E7%B1%BB%E5%9E%8B%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
函数模板偏特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E5%87%BD%E6%95%B0%E6%A8%A1%E6%9D%BF%E5%81%8F%E7%89%B9%E5%8C%96
命名模板实参https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E5%91%BD%E5%90%8D%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82
重载类模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E9%87%8D%E8%BD%BD%E7%B1%BB%E6%A8%A1%E6%9D%BF
中间包展开的推导https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E4%B8%AD%E9%97%B4%E5%8C%85%E5%B1%95%E5%BC%80%E7%9A%84%E6%8E%A8%E5%AF%BC
void的规范化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#void%E7%9A%84%E8%A7%84%E8%8C%83%E5%8C%96
模板的类型检查https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E6%A8%A1%E6%9D%BF%E7%9A%84%E7%B1%BB%E5%9E%8B%E6%A3%80%E6%9F%A5
反射元编程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E5%8F%8D%E5%B0%84%E5%85%83%E7%BC%96%E7%A8%8B
参数包设施https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E5%8F%82%E6%95%B0%E5%8C%85%E8%AE%BE%E6%96%BD
模块https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/17FutureDirections#%E6%A8%A1%E5%9D%97
第十八章:模板的多态性https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E7%AC%AC%E5%8D%81%E5%85%AB%E7%AB%A0%E6%A8%A1%E6%9D%BF%E7%9A%84%E5%A4%9A%E6%80%81%E6%80%A7
动态多态https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E5%8A%A8%E6%80%81%E5%A4%9A%E6%80%81
静态多态https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E9%9D%99%E6%80%81%E5%A4%9A%E6%80%81
动态与静态多态对比https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E5%8A%A8%E6%80%81%E4%B8%8E%E9%9D%99%E6%80%81%E5%A4%9A%E6%80%81%E5%AF%B9%E6%AF%94
概念(Concepts)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E6%A6%82%E5%BF%B5concepts
设计模式的新形式https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E7%9A%84%E6%96%B0%E5%BD%A2%E5%BC%8F
泛型编程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E6%B3%9B%E5%9E%8B%E7%BC%96%E7%A8%8B
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/18PolymorphicOfTemplates#%E5%90%8E%E8%AE%B0
第十九章:特征的实现https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E7%AC%AC%E5%8D%81%E4%B9%9D%E7%AB%A0%E7%89%B9%E5%BE%81%E7%9A%84%E5%AE%9E%E7%8E%B0
例子:累加一个序列https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E4%BE%8B%E5%AD%90%E7%B4%AF%E5%8A%A0%E4%B8%80%E4%B8%AA%E5%BA%8F%E5%88%97
特征与策略、策略类https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E7%89%B9%E5%BE%81%E4%B8%8E%E7%AD%96%E7%95%A5%E7%AD%96%E7%95%A5%E7%B1%BB
类型函数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E7%B1%BB%E5%9E%8B%E5%87%BD%E6%95%B0
基于SFINAE的特征https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E5%9F%BA%E4%BA%8Esfinae%E7%9A%84%E7%89%B9%E5%BE%81
IsConvertiblehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#isconvertible
检测成员https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E6%A3%80%E6%B5%8B%E6%88%90%E5%91%98
其他特征技术https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E5%85%B6%E4%BB%96%E7%89%B9%E5%BE%81%E6%8A%80%E6%9C%AF
类型分类https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E7%B1%BB%E5%9E%8B%E5%88%86%E7%B1%BB
策略特征https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E7%AD%96%E7%95%A5%E7%89%B9%E5%BE%81
标准库中的特征https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E6%A0%87%E5%87%86%E5%BA%93%E4%B8%AD%E7%9A%84%E7%89%B9%E5%BE%81
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/19ImplementingTraits#%E5%90%8E%E8%AE%B0
第二十章:类型属性上的重载https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E7%AC%AC%E4%BA%8C%E5%8D%81%E7%AB%A0%E7%B1%BB%E5%9E%8B%E5%B1%9E%E6%80%A7%E4%B8%8A%E7%9A%84%E9%87%8D%E8%BD%BD
算法特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E7%AE%97%E6%B3%95%E7%89%B9%E5%8C%96
标签分发https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E6%A0%87%E7%AD%BE%E5%88%86%E5%8F%91
启用与禁用模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E5%90%AF%E7%94%A8%E4%B8%8E%E7%A6%81%E7%94%A8%E6%A8%A1%E6%9D%BF
类模板特化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E7%B1%BB%E6%A8%A1%E6%9D%BF%E7%89%B9%E5%8C%96
实例化安全的模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E5%AE%9E%E4%BE%8B%E5%8C%96%E5%AE%89%E5%85%A8%E7%9A%84%E6%A8%A1%E6%9D%BF
标准库中的实践https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E6%A0%87%E5%87%86%E5%BA%93%E4%B8%AD%E7%9A%84%E5%AE%9E%E8%B7%B5
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/20OverloadingOnTypeProperties#%E5%90%8E%E8%AE%B0
第二十一章:模板与继承https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/21TemplatesAndInheritance#%E7%AC%AC%E4%BA%8C%E5%8D%81%E4%B8%80%E7%AB%A0%E6%A8%A1%E6%9D%BF%E4%B8%8E%E7%BB%A7%E6%89%BF
空基类优化(EBCO)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/21TemplatesAndInheritance#%E7%A9%BA%E5%9F%BA%E7%B1%BB%E4%BC%98%E5%8C%96ebco
奇异模板递归(CRTP)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/21TemplatesAndInheritance#%E5%A5%87%E5%BC%82%E6%A8%A1%E6%9D%BF%E9%80%92%E5%BD%92crtp
混入(Mixin)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/21TemplatesAndInheritance#%E6%B7%B7%E5%85%A5mixin
命名模板实参https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/21TemplatesAndInheritance#%E5%91%BD%E5%90%8D%E6%A8%A1%E6%9D%BF%E5%AE%9E%E5%8F%82
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/21TemplatesAndInheritance#%E5%90%8E%E8%AE%B0
第二十二章:桥接静态和动态多态https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E7%AC%AC%E4%BA%8C%E5%8D%81%E4%BA%8C%E7%AB%A0%E6%A1%A5%E6%8E%A5%E9%9D%99%E6%80%81%E5%92%8C%E5%8A%A8%E6%80%81%E5%A4%9A%E6%80%81
函数对象、函数指针和std::function<>https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E5%87%BD%E6%95%B0%E5%AF%B9%E8%B1%A1%E5%87%BD%E6%95%B0%E6%8C%87%E9%92%88%E5%92%8Cstdfunction
广义函数指针https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E5%B9%BF%E4%B9%89%E5%87%BD%E6%95%B0%E6%8C%87%E9%92%88
桥接接口(bridge interface)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E6%A1%A5%E6%8E%A5%E6%8E%A5%E5%8F%A3bridge-interface
类型擦除(type erasure)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E7%B1%BB%E5%9E%8B%E6%93%A6%E9%99%A4type-erasure
可选桥接(optional bridging)https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E5%8F%AF%E9%80%89%E6%A1%A5%E6%8E%A5optional-bridging
性能考虑https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E6%80%A7%E8%83%BD%E8%80%83%E8%99%91
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/22BridgingStaticAndDynamicPolymorphism#%E5%90%8E%E8%AE%B0
第二十三章:元编程https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E7%AC%AC%E4%BA%8C%E5%8D%81%E4%B8%89%E7%AB%A0%E5%85%83%E7%BC%96%E7%A8%8B
现代C++元编程的发展状态https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E7%8E%B0%E4%BB%A3c%E5%85%83%E7%BC%96%E7%A8%8B%E7%9A%84%E5%8F%91%E5%B1%95%E7%8A%B6%E6%80%81
反射元编程的维度https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E5%8F%8D%E5%B0%84%E5%85%83%E7%BC%96%E7%A8%8B%E7%9A%84%E7%BB%B4%E5%BA%A6
模板递归实例化的代价https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E6%A8%A1%E6%9D%BF%E9%80%92%E5%BD%92%E5%AE%9E%E4%BE%8B%E5%8C%96%E7%9A%84%E4%BB%A3%E4%BB%B7
计算完整性https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E8%AE%A1%E7%AE%97%E5%AE%8C%E6%95%B4%E6%80%A7
递归实例化和递归模板参数https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E9%80%92%E5%BD%92%E5%AE%9E%E4%BE%8B%E5%8C%96%E5%92%8C%E9%80%92%E5%BD%92%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0
枚举值与静态常量https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E6%9E%9A%E4%B8%BE%E5%80%BC%E4%B8%8E%E9%9D%99%E6%80%81%E5%B8%B8%E9%87%8F
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/23Metaprogramming#%E5%90%8E%E8%AE%B0
第二十四章:Typelistshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists#%E7%AC%AC%E4%BA%8C%E5%8D%81%E5%9B%9B%E7%AB%A0typelists
解析Typelisthttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists#%E8%A7%A3%E6%9E%90typelist
Typelist算法https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists#typelist%E7%AE%97%E6%B3%95
非类型Typelisthttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists#%E9%9D%9E%E7%B1%BB%E5%9E%8Btypelist
使用包扩展优化算法https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists#%E4%BD%BF%E7%94%A8%E5%8C%85%E6%89%A9%E5%B1%95%E4%BC%98%E5%8C%96%E7%AE%97%E6%B3%95
Cons风格的Typelisthttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists#cons%E9%A3%8E%E6%A0%BC%E7%9A%84typelist
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/24Typelists#%E5%90%8E%E8%AE%B0
第二十五章:元组https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E7%AC%AC%E4%BA%8C%E5%8D%81%E4%BA%94%E7%AB%A0%E5%85%83%E7%BB%84
基本元组设计https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E5%9F%BA%E6%9C%AC%E5%85%83%E7%BB%84%E8%AE%BE%E8%AE%A1
基本元组操作https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E5%9F%BA%E6%9C%AC%E5%85%83%E7%BB%84%E6%93%8D%E4%BD%9C
元组算法https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E5%85%83%E7%BB%84%E7%AE%97%E6%B3%95
展开元组https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E5%B1%95%E5%BC%80%E5%85%83%E7%BB%84
优化元组https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E4%BC%98%E5%8C%96%E5%85%83%E7%BB%84
元组下标https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E5%85%83%E7%BB%84%E4%B8%8B%E6%A0%87
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/25Tuples#%E5%90%8E%E8%AE%B0
第二十六章:可识别的联合https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#%E7%AC%AC%E4%BA%8C%E5%8D%81%E5%85%AD%E7%AB%A0%E5%8F%AF%E8%AF%86%E5%88%AB%E7%9A%84%E8%81%94%E5%90%88
存储https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#%E5%AD%98%E5%82%A8
设计https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#%E8%AE%BE%E8%AE%A1
值查询与提取https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#%E5%80%BC%E6%9F%A5%E8%AF%A2%E4%B8%8E%E6%8F%90%E5%8F%96
元素初始化、赋值和销毁https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#%E5%85%83%E7%B4%A0%E5%88%9D%E5%A7%8B%E5%8C%96%E8%B5%8B%E5%80%BC%E5%92%8C%E9%94%80%E6%AF%81
访问https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#%E8%AE%BF%E9%97%AE
Variant初始化与赋值https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#variant%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B8%8E%E8%B5%8B%E5%80%BC
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/26DiscriminatedUnions#%E5%90%8E%E8%AE%B0
第二十七章:表达式模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/27ExpressionTemplates#%E7%AC%AC%E4%BA%8C%E5%8D%81%E4%B8%83%E7%AB%A0%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%A8%A1%E6%9D%BF
临时变量与分割循环https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/27ExpressionTemplates#%E4%B8%B4%E6%97%B6%E5%8F%98%E9%87%8F%E4%B8%8E%E5%88%86%E5%89%B2%E5%BE%AA%E7%8E%AF
在模板参数中编码表达式https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/27ExpressionTemplates#%E5%9C%A8%E6%A8%A1%E6%9D%BF%E5%8F%82%E6%95%B0%E4%B8%AD%E7%BC%96%E7%A0%81%E8%A1%A8%E8%BE%BE%E5%BC%8F
表达式模板的性能与约束https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/27ExpressionTemplates#%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%A8%A1%E6%9D%BF%E7%9A%84%E6%80%A7%E8%83%BD%E4%B8%8E%E7%BA%A6%E6%9D%9F
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/27ExpressionTemplates#%E5%90%8E%E8%AE%B0
第二十八章:调试模板https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates#%E7%AC%AC%E4%BA%8C%E5%8D%81%E5%85%AB%E7%AB%A0%E8%B0%83%E8%AF%95%E6%A8%A1%E6%9D%BF
浅式实例化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates#%E6%B5%85%E5%BC%8F%E5%AE%9E%E4%BE%8B%E5%8C%96
静态断言https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates#%E9%9D%99%E6%80%81%E6%96%AD%E8%A8%80
原型https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates#%E5%8E%9F%E5%9E%8B
跟踪程序https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates#%E8%B7%9F%E8%B8%AA%E7%A8%8B%E5%BA%8F
Oracleshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates#oracles
后记https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/28DebuggingTemplates#%E5%90%8E%E8%AE%B0
附录A:一个定义原则https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixA#%E9%99%84%E5%BD%95a%E4%B8%80%E4%B8%AA%E5%AE%9A%E4%B9%89%E5%8E%9F%E5%88%99
翻译单元https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixA#%E7%BF%BB%E8%AF%91%E5%8D%95%E5%85%83
声明和定义https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixA#%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89
一个定义原则细节https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixA#%E4%B8%80%E4%B8%AA%E5%AE%9A%E4%B9%89%E5%8E%9F%E5%88%99%E7%BB%86%E8%8A%82
附录E:概念https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E9%99%84%E5%BD%95e%E6%A6%82%E5%BF%B5
附录E内容https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E9%99%84%E5%BD%95e%E5%86%85%E5%AE%B9
使用概念https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E4%BD%BF%E7%94%A8%E6%A6%82%E5%BF%B5
定义概念https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E5%AE%9A%E4%B9%89%E6%A6%82%E5%BF%B5
重载约束https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E9%87%8D%E8%BD%BD%E7%BA%A6%E6%9D%9F
概念提示https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E6%A6%82%E5%BF%B5%E6%8F%90%E7%A4%BA
C++20的约束与概念https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#c20%E7%9A%84%E7%BA%A6%E6%9D%9F%E4%B8%8E%E6%A6%82%E5%BF%B5
概念https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E6%A6%82%E5%BF%B5
约束https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E7%BA%A6%E6%9D%9F
合取https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E5%90%88%E5%8F%96
析取https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E6%9E%90%E5%8F%96
原子约束https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E5%8E%9F%E5%AD%90%E7%BA%A6%E6%9D%9F
约束规范化https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E7%BA%A6%E6%9D%9F%E8%A7%84%E8%8C%83%E5%8C%96
requires子句https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#requires%E5%AD%90%E5%8F%A5
requires表达式https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#requires%E8%A1%A8%E8%BE%BE%E5%BC%8F
简单要求https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E7%AE%80%E5%8D%95%E8%A6%81%E6%B1%82
类型要求https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E7%B1%BB%E5%9E%8B%E8%A6%81%E6%B1%82
复合要求https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E5%A4%8D%E5%90%88%E8%A6%81%E6%B1%82
嵌套要求https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E5%B5%8C%E5%A5%97%E8%A6%81%E6%B1%82
约束的偏序https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E7%BA%A6%E6%9D%9F%E7%9A%84%E5%81%8F%E5%BA%8F
总结https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/blob/master/AppendixE#%E6%80%BB%E7%BB%93
Readme https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming#readme-ov-file
WTFPL license https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming#WTFPL-1-ov-file
Please reload this pagehttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming
Activityhttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/activity
0 starshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/stargazers
1 watchinghttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/watchers
0 forkshttps://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/forks
Report repository https://patch-diff.githubusercontent.com/contact/report-content?content_url=https%3A%2F%2Fgithub.com%2Ftch0%2FCppTemplateProgramming&report=tch0+%28user%29
C++ 98.5% https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/search?l=c%2B%2B
Makefile 1.5% https://patch-diff.githubusercontent.com/tch0/CppTemplateProgramming/search?l=makefile
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.