• C++ Primer英文版(第5版)
  • C++ Primer英文版(第5版)
  • C++ Primer英文版(第5版)
  • C++ Primer英文版(第5版)
  • C++ Primer英文版(第5版)
  • C++ Primer英文版(第5版)
  • C++ Primer英文版(第5版)
  • C++ Primer英文版(第5版)
21年品牌 40万+商家 超1.5亿件商品

C++ Primer英文版(第5版)

20 1.6折 128 八五品

仅1件

河北廊坊
认证卖家担保交易快速发货售后保障

作者[美]李普曼(Stanley B. Lippman)、[美]拉乔伊(Josée Lajoie)、[美]默(Barbara E. Moo) 著

出版社电子工业出版社

出版时间2013-05

版次5

装帧平装

货号D5

上书时间2024-11-29

墨品书院

已实名 进店 收藏店铺

   商品详情   

品相描述:八五品
图书标准信息
  • 作者 [美]李普曼(Stanley B. Lippman)、[美]拉乔伊(Josée Lajoie)、[美]默(Barbara E. Moo) 著
  • 出版社 电子工业出版社
  • 出版时间 2013-05
  • 版次 5
  • ISBN 9787121200380
  • 定价 128.00元
  • 装帧 平装
  • 开本 16开
  • 纸张 胶版纸
  • 页数 964页
  • 字数 1388千字
  • 正文语种 简体中文,英语
  • 原版书名 C++Primer,5th
【内容简介】

  《C++Primer英文版(第5版)》久负盛名的C++经典教程,时隔八年之久,终迎来的重大升级。除令全球无数程序员从中受益,甚至为之迷醉的--C++大师StanleyB.Lippman的丰富实践经验,C++标准委员会原负责人JoséeLajoie对C++标准的深入理解,以及C++先驱BarbaraE.Moo在C++教学方面的真知灼见外,更是基于全新的C++11标准进行了全面而彻底的内容更新。非常难能可贵的是,书中所有示例均全部采用C++11标准改写,这在经典升级版中极其罕见--充分体现了C++语言的重大进展极其全面实践。书中丰富的教学辅助内容、醒目的知识点提示,以及精心组织的编程示范,让《C++Primer英文版(第5版)》这本书在C++领域的专业地位更加不可动摇。无论是初学者入门,或是中、高级程序员提升,《C++Primer英文版(第5版)》均为不容置疑的优选。

【作者简介】

  StanleyB.Lippman,目前是微软公司VisualC++团队的架构师。他从1984年开始在贝尔实验室与C++的设计者BjarneStroustrup一起从事C++的设计与开发。他在迪士尼和梦工厂从事动画制作,还担任过JPL的高级顾问。

  JoséeLajoie,曾经是IBM加拿大研究中心C/C++编译器开发团队的成员,在ISOC++标准委员会工作了7年,担任过ISO核心语言工作组的主席和C++Report杂志的专栏作家。

  BarbaraE.Moo,拥有25年软件经验的独立咨询顾问。在AT&T,她与Stroustrup、Lippman一起管理过复杂的C++开发项目。

【目录】
Preface xxiii 

Chapter 1 Getting Started 
1.1 Writing a Simple C++Program 
1.1.1 Compiling and Executing Our Program 
1.2 AFirstLookat Input/Output 
1.3 AWordaboutComments 
1.4 FlowofControl 
1.4.1 The whileStatement 
1.4.2 The forStatement 
1.4.3 ReadinganUnknownNumberof Inputs 
1.4.4 The ifStatement 
1.5 IntroducingClasses 
1.5.1 The Sales_itemClass 
1.5.2 AFirstLookatMemberFunctions 
1.6 TheBookstoreProgram 

ChapterSummary 
DefinedTerms 
Part I The Basics 

Chapter 2 Variables and Basic Types 
2.1 PrimitiveBuilt-inTypes 
2.1.1 ArithmeticTypes 
2.1.2 TypeConversions 
2.1.3 Literals 
2.2 Variables 
2.2.1 VariableDefinitions 
2.2.2 VariableDeclarations andDefinitions 
2.2.3 Identifiers 
2.2.4 Scopeof aName 
2.3 CompoundTypes 
2.3.1 References 
2.3.2 Pointers 
vii 
viii Contents 
2.3.3 UnderstandingCompoundTypeDeclarations 
2.4 constQualifier 
2.4.1 References to const 
2.4.2 Pointers and const 
2.4.3 Top-Level const 
2.4.4 constexprandConstantExpressions 
2.5 DealingwithTypes 
2.5.1 TypeAliases 
2.5.2 The autoTypeSpecifier 
2.5.3 The decltypeTypeSpecifier 
2.6 DefiningOurOwnDataStructures 
2.6.1 Defining the Sales_dataType 
2.6.2 Using the Sales_dataClass 
2.6.3 Writing Our Own Header Files 

ChapterSummary 
DefinedTerms 

Chapter 3 Strings, Vectors, and Arrays 
3.1 Namespace usingDeclarations 
3.2 Library stringType 
3.2.1 Defining and Initializing strings 
3.2.2 Operations on strings 
3.2.3 Dealing with the Characters in a string 
3.3 Library vectorType 
3.3.1 Defining and Initializing vectors 
3.3.2 Adding Elements to a vector 
3.3.3 Other vectorOperations 
3.4 IntroducingIterators 
3.4.1 UsingIterators 
3.4.2 IteratorArithmetic 
3.5 Arrays 
3.5.1 DefiningandInitializingBuilt-inArrays 
3.5.2 AccessingtheElementsof anArray 
3.5.3 Pointers andArrays 
3.5.4 C-StyleCharacterStrings 
3.5.5 InterfacingtoOlderCode 
3.6 MultidimensionalArrays 

ChapterSummary 
DefinedTerms 

Chapter 4 Expressions 
4.1 Fundamentals 
4.1.1 BasicConcepts 
4.1.2 PrecedenceandAssociativity 
4.1.3 OrderofEvaluation 
4.2 ArithmeticOperators 
4.3 Logical andRelationalOperators 
Contents ix 
4.4 AssignmentOperators 
4.5 Increment andDecrementOperators 
4.6 TheMemberAccessOperators 
4.7 TheConditionalOperator 
4.8 TheBitwiseOperators 
4.9 The sizeofOperator 
4.10 CommaOperator 
4.11 TypeConversions 
4.11.1 TheArithmeticConversions 
4.11.2 Other ImplicitConversions 
4.11.3 ExplicitConversions 
4.12 OperatorPrecedenceTable 

ChapterSummary 
DefinedTerms 

Chapter 5 Statements 
5.1 Simple Statements 
5.2 StatementScope 
5.3 Conditional Statements 
5.3.1 The ifStatement 
5.3.2 The switchStatement 
5.4 IterativeStatements 
5.4.1 The whileStatement 
5.4.2 Traditional forStatement 
5.4.3 Range forStatement 
5.4.4 The do whileStatement 
5.5 JumpStatements 
5.5.1 The breakStatement 
5.5.2 The continueStatement 
5.5.3 The gotoStatement 
5.6 tryBlocks andExceptionHandling 
5.6.1 A throwExpression 
5.6.2 The tryBlock 
5.6.3 StandardExceptions 

ChapterSummary 
DefinedTerms 

Chapter 6 Functions 
6.1 FunctionBasics 
6.1.1 LocalObjects 
6.1.2 FunctionDeclarations 
6.1.3 SeparateCompilation 
6.2 ArgumentPassing 
6.2.1 PassingArgumentsbyValue 
6.2.2 PassingArgumentsbyReference 
6.2.3 constParametersandArguments 
6.2.4 ArrayParameters 
x Contents 
6.2.5 main:HandlingCommand-LineOptions 
6.2.6 FunctionswithVaryingParameters 
6.3 Return Types and the returnStatement 
6.3.1 FunctionswithNoReturnValue 
6.3.2 FunctionsThatReturnaValue 
6.3.3 ReturningaPointer toanArray 
6.4 OverloadedFunctions 
6.4.1 OverloadingandScope 
6.5 Features forSpecializedUses 
6.5.1 DefaultArguments 
6.5.2 Inline and constexprFunctions 
6.5.3 Aids for Debugging 
6.6 FunctionMatching 
6.6.1 ArgumentTypeConversions 
6.7 Pointers toFunctions 

ChapterSummary 
DefinedTerms 

Chapter 7 Classes 
7.1 DefiningAbstractDataTypes 
7.1.1 Designing the Sales_dataClass 
7.1.2 Defining the Revised Sales_dataClass 
7.1.3 DefiningNonmemberClass-RelatedFunctions 
7.1.4 Constructors 
7.1.5 Copy,Assignment, andDestruction 
7.2 AccessControl andEncapsulation 
7.2.1 Friends 
7.3 AdditionalClassFeatures 
7.3.1 ClassMembersRevisited 
7.3.2 Functions That Return *this 
7.3.3 ClassTypes 
7.3.4 FriendshipRevisited 
7.4 ClassScope 
7.4.1 NameLookupandClassScope 
7.5 ConstructorsRevisited 
7.5.1 Constructor InitializerList 
7.5.2 DelegatingConstructors 
7.5.3 TheRoleof theDefaultConstructor 
7.5.4 ImplicitClass-TypeConversions 
7.5.5 AggregateClasses 
7.5.6 LiteralClasses 
7.6 staticClassMembers 

ChapterSummary 
DefinedTerms 
Contents xi 
Part II The C++ Library 

Chapter 8 The IO Library 
8.1 The IOClasses 
8.1.1 NoCopyorAssignfor IOObjects 
8.1.2 ConditionStates 
8.1.3 ManagingtheOutputBuffer 
8.2 File Input and Output 
8.2.1 Using File Stream Objects 
8.2.2 File Modes 
8.3 stringStreams 
8.3.1 Using an istringstream 
8.3.2 Using ostringstreams 

ChapterSummary 
DefinedTerms 

Chapter 9 Sequential Containers 
9.1 Overviewof the SequentialContainers 
9.2 ContainerLibraryOverview 
9.2.1 Iterators 
9.2.2 ContainerTypeMembers 
9.2.3 begin and endMembers 
9.2.4 DefiningandInitializingaContainer 
9.2.5 Assignment and swap 
9.2.6 ContainerSizeOperations 
9.2.7 RelationalOperators 
9.3 SequentialContainerOperations 
9.3.1 AddingElements toaSequentialContainer 
9.3.2 AccessingElements 
9.3.3 ErasingElements 
9.3.4 Specialized forward_listOperations 
9.3.5 ResizingaContainer 
9.3.6 ContainerOperationsMayInvalidateIterators 
9.4 How a vectorGrows 
9.5 Additional stringOperations 
9.5.1 Other Ways to Construct strings 
9.5.2 Other Ways to Change a string 
9.5.3 stringSearchOperations 
9.5.4 The compareFunctions 
9.5.5 NumericConversions 
9.6 ContainerAdaptors 

ChapterSummary 
DefinedTerms 
xii Contents 

Chapter 10 Generic Algorithms 
10.1 Overview 
10.2 AFirstLookat theAlgorithms 
10.2.1 Read-OnlyAlgorithms 
10.2.2 AlgorithmsThatWriteContainerElements 
10.2.3 AlgorithmsThatReorderContainerElements 
10.3 CustomizingOperations 
10.3.1 PassingaFunctiontoanAlgorithm 
10.3.2 LambdaExpressions 
10.3.3 LambdaCapturesandReturns 
10.3.4 BindingArguments 
10.4 Revisiting Iterators 
10.4.1 Insert Iterators 
10.4.2 iostream Iterators 
10.4.3 Reverse Iterators 
10.5 StructureofGenericAlgorithms 
10.5.1 TheFive IteratorCategories 
10.5.2 AlgorithmParameterPatterns 
10.5.3 AlgorithmNamingConventions 
10.6 Container-SpecificAlgorithms 

ChapterSummary 
DefinedTerms 

Chapter 11 Associative Containers 
11.1 UsinganAssociativeContainer 
11.2 Overviewof theAssociativeContainers 
11.2.1 DefininganAssociativeContainer 
11.2.2 Requirements onKeyType 
11.2.3 The pairType 
11.3 Operations onAssociativeContainers 
11.3.1 AssociativeContainer Iterators 
11.3.2 AddingElements 
11.3.3 ErasingElements 
11.3.4 Subscripting a map 
11.3.5 AccessingElements 
11.3.6 AWordTransformationMap 
11.4 TheUnorderedContainers 

ChapterSummary 
DefinedTerms 

Chapter 12 DynamicMemory 
12.1 DynamicMemoryandSmartPointers 
12.1.1 The shared_ptrClass 
12.1.2 ManagingMemoryDirectly 
12.1.3 Using shared_ptrs with new 
12.1.4 SmartPointers andExceptions 
12.1.5 unique_ptr 
Contents xiii 
12.1.6 weak_ptr 
12.2 DynamicArrays 
12.2.1 newandArrays 
12.2.2 The allocatorClass 
12.3 UsingtheLibrary:AText-QueryProgram 
12.3.1 Designof theQueryProgram 
12.3.2 DefiningtheQueryProgramClasses 

ChapterSummary 
DefinedTerms 
Part III Tools for Class Authors 

Chapter 13 Copy Control 
13.1 Copy,Assign, andDestroy 
13.1.1 TheCopyConstructor 
13.1.2 TheCopy-AssignmentOperator 
13.1.3 TheDestructor 
13.1.4 TheRuleofThree/Five 
13.1.5 Using = default 
13.1.6 PreventingCopies 
13.2 CopyControl andResourceManagement 
13.2.1 ClassesThatActLikeValues 
13.2.2 DefiningClassesThatActLikePointers 
13.3 Swap 
13.4 ACopy-ControlExample 
13.5 ClassesThatManageDynamicMemory 
13.6 MovingObjects 
13.6.1 RvalueReferences 
13.6.2 MoveConstructor andMoveAssignment 
13.6.3 RvalueReferencesandMemberFunctions 

ChapterSummary 
DefinedTerms 

Chapter 14 Overloaded Operations and Conversions 
14.1 BasicConcepts 
14.2 Input andOutputOperators 
14.2.1 Overloading the Output Operator << 
14.2.2 Overloading the Input Operator >> 
14.3 Arithmetic andRelationalOperators 
14.3.1 EqualityOperators 
14.3.2 RelationalOperators 
14.4 AssignmentOperators 
14.5 SubscriptOperator 
14.6 Increment andDecrementOperators 
14.7 MemberAccessOperators 
14.8 Function-CallOperator 
xiv Contents 
14.8.1 LambdasAreFunctionObjects 
14.8.2 Library-DefinedFunctionObjects 
14.8.3 Callable Objects and function 
14.9 Overloading,Conversions, andOperators 
14.9.1 ConversionOperators 
14.9.2 AvoidingAmbiguousConversions 
14.9.3 FunctionMatchingandOverloadedOperators 

ChapterSummary 
DefinedTerms 

Chapter 15 Object-Oriented Programming 
15.1 OOP:AnOverview 
15.2 DefiningBaseandDerivedClasses 
15.2.1 DefiningaBaseClass 
15.2.2 DefiningaDerivedClass 
15.2.3 Conversions andInheritance 
15.3 VirtualFunctions 
15.4 AbstractBaseClasses 
15.5 AccessControl andInheritance 
15.6 ClassScopeunder Inheritance 
15.7 Constructors andCopyControl 
15.7.1 VirtualDestructors 
15.7.2 SynthesizedCopyControl andInheritance 
15.7.3 Derived-ClassCopy-ControlMembers 
15.7.4 InheritedConstructors 
15.8 Containers andInheritance 
15.8.1 Writing a BasketClass 
15.9 TextQueriesRevisited 
15.9.1 AnObject-OrientedSolution 
15.9.2 The Query_base and QueryClasses 
15.9.3 TheDerivedClasses 
15.9.4 The evalFunctions 

ChapterSummary 
DefinedTerms 

Chapter 16 Templates and Generic Programming 
16.1 DefiningaTemplate 
16.1.1 FunctionTemplates 
16.1.2 ClassTemplates 
16.1.3 TemplateParameters 
16.1.4 MemberTemplates 
16.1.5 Controlling Instantiations 
16.1.6 Efficiency and Flexibility 
16.2 TemplateArgumentDeduction 
16.2.1 Conversions andTemplateTypeParameters 
16.2.2 Function-TemplateExplicitArguments 
16.2.3 Trailing Return Types and Type Transformation 
Contents xv 
16.2.4 FunctionPointers andArgumentDeduction 
16.2.5 TemplateArgumentDeductionandReferences 
16.2.6 Understanding std::move 
16.2.7 Forwarding 
16.3 OverloadingandTemplates 
16.4 VariadicTemplates 
16.4.1 WritingaVariadicFunctionTemplate 
16.4.2 PackExpansion 
16.4.3 ForwardingParameterPacks 
16.5 Template Specializations 

ChapterSummary 
DefinedTerms 
Part IV Advanced Topics 

Chapter 17 Specialized Library Facilities 
17.1 The tupleType 
17.1.1 Defining and Initializing tuples 
17.1.2 Using a tuple toReturnMultipleValues 
17.2 The bitsetType 
17.2.1 Defining and Initializing bitsets 
17.2.2 Operations on bitsets 
17.3 RegularExpressions 
17.3.1 UsingtheRegularExpressionLibrary 
17.3.2 TheMatchandRegex IteratorTypes 
17.3.3 UsingSubexpressions 
17.3.4 Using regex_replace 
17.4 RandomNumbers 
17.4.1 Random-NumberEngines andDistribution 
17.4.2 OtherKinds ofDistributions 
17.5 The IOLibraryRevisited 
17.5.1 FormattedInput andOutput 
17.5.2 UnformattedInput/OutputOperations 
17.5.3 RandomAccess toaStream 

ChapterSummary 
DefinedTerms 

Chapter 18 Tools for Large Programs 
18.1 ExceptionHandling 
18.1.1 ThrowinganException 
18.1.2 CatchinganException 
18.1.3 Function tryBlocks andConstructors 
18.1.4 The noexceptExceptionSpecification 
18.1.5 ExceptionClassHierarchies 
18.2 Namespaces 
18.2.1 NamespaceDefinitions 
xvi Contents 
18.2.2 UsingNamespaceMembers 
18.2.3 Classes,Namespaces,andScope 
18.2.4 OverloadingandNamespaces 
18.3 Multiple andVirtual Inheritance 
18.3.1 Multiple Inheritance 
18.3.2 Conversions andMultipleBaseClasses 
18.3.3 ClassScopeunderMultiple Inheritance 
18.3.4 Virtual Inheritance 
18.3.5 Constructors andVirtual Inheritance 

ChapterSummary 
DefinedTerms 

Chapter 19 Specialized Tools and Techniques 
19.1 Controlling Memory Allocation 
19.1.1 Overloading new and delete 
19.1.2 Placement newExpressions 
19.2 Run-TimeTypeIdentification 
19.2.1 The dynamic_castOperator 
19.2.2 The typeidOperator 
19.2.3 UsingRTTI 
19.2.4 The type_infoClass 
19.3 Enumerations 
19.4 Pointer toClassMember 
19.4.1 Pointers toDataMembers 
19.4.2 Pointers toMemberFunctions 
19.4.3 UsingMemberFunctions asCallableObjects 
19.5 NestedClasses 
19.6 union:ASpace-SavingClass 
19.7 LocalClasses 
19.8 InherentlyNonportableFeatures 
19.8.1 Bit-fields 
19.8.2 volatileQualifier 
19.8.3 Linkage Directives: extern "C" 

ChapterSummary 
DefinedTerms 
Appendix A The Library 
A.1 LibraryNames andHeaders 
A.2 ABriefTourof theAlgorithms 
A.2.1 Algorithms toFindanObject 
A.2.2 OtherRead-OnlyAlgorithms 
A.2.3 BinarySearchAlgorithms 
A.2.4 AlgorithmsThatWriteContainerElements 
A.2.5 PartitioningandSortingAlgorithms 
A.2.6 GeneralReorderingOperations 
A.2.7 PermutationAlgorithms 
A.2.8 SetAlgorithms forSortedSequences 
Contents xvii 
A.2.9 MinimumandMaximumValues 
A.2.10 NumericAlgorithms 
A.3 RandomNumbers 
A.3.1 RandomNumberDistributions 
A.3.2 RandomNumberEngines 
Index 

New Features in C++ 
2.1.1 long longType 
2.2.1 List Initialization 
2.3.2 nullptrLiteral 
2.4.4 constexprVariables 
2.5.1 TypeAliasDeclarations 
2.5.2 The autoTypeSpecifier 
2.5.3 The decltypeTypeSpecifier 
2.6.1 In-Class Initializers 
3.2.2 Using auto or decltype forTypeAbbreviation 
3.2.3 Range forStatement 
3.3 Defining a vector of vectors 
3.3.1 List Initialization for vectors 
3.4.1 Container cbegin and cendFunctions 
3.5.3 Library begin and endFunctions 
3.6 Using auto or decltype to SimplifyDeclarations 
4.2 RoundingRules forDivision 
4.4 Assignment fromaBracedListofValues 
4.9 sizeofAppliedtoaClassMember 
5.4.3 Range forStatement 
6.2.6 Library initializer_listClass 
6.3.2 List InitializingaReturnValue 
6.3.3 Declaring a Trailing Return Type 
6.3.3 Using decltype to Simplify Return Type Declarations 
6.5.2 constexprFunctions 
7.1.4 Using = default toGenerateaDefaultConstructor 
7.3.1 In-class Initializers forMembersofClassType 
7.5.2 DelegatingConstructors 
7.5.6 constexprConstructors 
8.2.1 Using strings for File Names 
9.1 The array and forward_listContainers 
9.2.3 Container cbegin and cendFunctions 
9.2.4 List InitializationforContainers 
9.2.5 Container Nonmember swapFunctions 
9.3.1 Return Type for Container insertMembers 
9.3.1 Container emplaceMembers 
xix 
xx New Features in C++ 
9.4 shrink_to_fit 
9.5.5 Numeric Conversion Functions for strings 
10.3.2 LambdaExpressions 
10.3.3 Trailing Return Type in Lambda Expressions 
10.3.4 The Library bindFunction 
11.2.1 List Initializationof anAssociativeContainer 
11.2.3 List Initializing pairReturnType 
11.3.2 List Initialization of a pair 
11.4 TheUnorderedContainers 
12.1 SmartPointers 
12.1.1 The shared_ptrClass 
12.1.2 List InitializationofDynamicallyAllocatedObjects 
12.1.2 autoandDynamicAllocation 
12.1.5 The unique_ptrClass 
12.1.6 The weak_ptrClass 
12.2.1 Range for Doesn't Apply to Dynamically Allocated Arrays 
12.2.1 List InitializationofDynamicallyAllocatedArrays 
12.2.1 autoCan'tBeUsedtoAllocateanArray 
12.2.2 allocator::constructCanUseanyConstructor 
13.1.5 Using = default forCopy-ControlMembers 
13.1.6 Using = delete toPreventCopyingClassObjects 
13.5 MovingInsteadofCopyingClassObjects 
13.6.1 RvalueReferences 
13.6.1 The Library moveFunction 
13.6.2 MoveConstructor andMoveAssignment 
13.6.2 Move Constructors Usually Should Be noexcept 
13.6.2 MoveIterators 
13.6.3 ReferenceQualifiedMemberFunctions 
14.8.3 The functionClassTemplate 
14.9.1 explicitConversionOperators 
15.2.2 overrideSpecifier forVirtualFunctions 
15.2.2 Preventing Inheritance by Defining a Class as final 
15.3 override and final Specifiers for Virtual Functions 
15.7.2 DeletedCopyControl andInheritance 
15.7.4 InheritedConstructors 
16.1.2 DeclaringaTemplateTypeParameteras aFriend 
16.1.2 TemplateTypeAliases 
16.1.3 DefaultTemplateArguments forTemplateFunctions 
16.1.5 ExplicitControlof Instantiation 
16.2.3 Template Functions and Trailing Return Types 
16.2.5 ReferenceCollapsingRules 
16.2.6 static_cast fromanLvaluetoanRvalue 
16.2.7 The Library forwardFunction 
16.4 VariadicTemplates 
16.4 The sizeof...Operator 
16.4.3 VariadicTemplates andForwarding 
New Features in C++11 xxi 
17.1 The Library TupleClassTemplate 
17.2.2 New bitsetOperations 
17.3 TheRegularExpressionLibrary 
17.4 TheRandomNumberLibrary 
17.5.1 Floating-Point FormatControl 
18.1.4 The noexceptExceptionSpecifier 
18.1.4 The noexceptOperator 
18.2.1 InlineNamespaces 
18.3.1 InheritedConstructors andMultiple Inheritance 
19.3 Scoped enums 
19.3 Specifying the Type Used to Hold an enum 
19.3 Forward Declarations for enums 
19.4.3 The Library mem_fnClassTemplate 
19.6 UnionMembersofClassTypes

点击展开 点击收起

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP