- 博客(0)
- 资源 (29)
- 收藏
- 关注
Learning Boost C++ Libraries
Learning Boost C++ Libraries
Copyright © 2015 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means, without the prior written
permission of the publisher, except in the case of brief quotations embedded in
critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy
of the information presented. However, the information contained in this book is
sold without warranty, either express or implied. Neither the author, nor Packt
Publishing, and its dealers and distributors will be held liable for any damages
caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the
companies and products mentioned in this book by the appropriate use of capitals.
However, Packt Publishing cannot guarantee the accuracy of this information.
First published: July 2015
Production reference: 1280715
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78355-121-7
2018-11-20
C# 4.0 in a Nutshell 4th Edition Jan 2010
Table of Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
1. Introducing C# and the .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Object Orientation 1
Type Safety 2
Memory Management 2
Platform Support 3
C#’s Relationship with the CLR 3
The CLR and .NET Framework 3
What’s New in C# 4.0 5
2. C# Language Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
A First C# Program 7
Syntax 10
Type Basics 12
Numeric Types 21
Boolean Type and Operators 28
Strings and Characters 30
Arrays 32
Variables and Parameters 36
Expressions and Operators 44
Statements 48
Namespaces 56
3. Creating Types in C# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Classes 63
Inheritance 76
The object Type 85
v
Structs 89
Access Modifiers 90
Interfaces 92
Enums 97
Nested Types 100
Generics 101
4. Advanced C# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Delegates 115
Events 124
Lambda Expressions 130
Anonymous Methods 134
try Statements and Exceptions 134
Enumeration and Iterators 143
Nullable Types 148
Operator Overloading 153
Extension Methods 157
Anonymous Types 160
Dynamic Binding 161
Attributes 169
Unsafe Code and Pointers 170
Preprocessor Directives 174
XML Documentation 176
5. Framework Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
The CLR and Core Framework 183
Applied Technologies 187
6. Framework Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
String and Text Handling 193
Dates and Times 206
Dates and Time Zones 213
Formatting and Parsing 219
Standard Format Strings and Parsing Flags 225
Other Conversion Mechanisms 232
Globalization 235
Working with Numbers 237
Enums 240
Tuples 244
The Guid Struct 245
Equality Comparison 245
Order Comparison 255
Utility Classes 258
vi | Table of Contents
7. Collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
Enumeration 263
The ICollection and IList Interfaces 271
The Array Class 273
Lists, Queues, Stacks, and Sets 282
Dictionaries 292
Customizable Collections and Proxies 298
Plugging in Equality and Order 304
8. LINQ Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Getting Started 311
Fluent Syntax 314
Query Expressions 320
Deferred Execution 324
Subqueries 330
Composition Strategies 333
Projection Strategies 337
Interpreted Queries 339
LINQ to SQL and Entity Framework 346
Building Query Expressions 361
9. LINQ Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Overview 369
Filtering 371
Projecting 375
Joining 387
Ordering 394
Grouping 397
Set Operators 400
The Zip Operator 401
Conversion Methods 402
Element Operators 404
Aggregation Methods 406
Quantifiers 411
Generation Methods 412
10. LINQ to XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Architectural Overview 413
X-DOM Overview 414
Instantiating an X-DOM 418
Navigating and Querying 420
Updating an X-DOM 425
Working with Values 428
Documents and Declarations 431
Names and Namespaces 434
Table of Contents | vii
Annotations 440
Projecting into an X-DOM 441
11. Other XML Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
XmlReader 448
XmlWriter 457
Patterns for Using XmlReader/XmlWriter 459
XmlDocument 463
XPath 466
XSD and Schema Validation 471
XSLT 474
12. Disposal and Garbage Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
IDisposable, Dispose, and Close 475
Automatic Garbage Collection 480
Finalizers 482
How the Garbage Collector Works 487
Managed Memory Leaks 491
Weak References 494
13. Diagnostics and Code Contracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
Conditional Compilation 499
Debug and Trace Classes 502
Code Contracts Overview 506
Preconditions 510
Postconditions 514
Assertions and Object Invariants 517
Contracts on Interfaces and Abstract Methods 518
Dealing with Contract Failure 519
Selectively Enforcing Contracts 521
Static Contract Checking 523
Debugger Integration 524
Processes and Process Threads 525
StackTrace and StackFrame 526
Windows Event Logs 528
Performance Counters 530
The Stopwatch Class 535
14. Streams and I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
Stream Architecture 537
Using Streams 539
Stream Adapters 552
File and Directory Operations 559
Memory-Mapped Files 569
Compression 571
viii | Table of Contents
Isolated Storage 573
15. Networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
Network Architecture 579
Addresses and Ports 581
URIs 582
Request/Response Architecture 584
HTTP-Specific Support 592
Writing an HTTP Server 597
Using FTP 600
Using DNS 602
Sending Mail with SmtpClient 603
Using TCP 604
Receiving POP3 Mail with TCP 606
16. Serialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
Serialization Concepts 609
The Data Contract Serializer 613
Data Contracts and Collections 622
Extending Data Contracts 625
The Binary Serializer 628
Binary Serialization Attributes 630
Binary Serialization with ISerializable 634
XML Serialization 637
17. Assemblies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
What’s in an Assembly? 647
Strong Names and Assembly Signing 652
Assembly Names 655
Authenticode Signing 657
The Global Assembly Cache 661
Resources and Satellite Assemblies 663
Resolving and Loading Assemblies 671
Deploying Assemblies Outside the Base Folder 675
Packing a Single-File Executable 676
Working with Unreferenced Assemblies 678
18. Reflection and Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
Reflecting and Activating Types 682
Reflecting and Invoking Members 688
Reflecting Assemblies 700
Working with Attributes 701
Dynamic Code Generation 707
Emitting Assemblies and Types 714
Emitting Type Members 717
Table of Contents | ix
Emitting Generic Methods and Types 723
Awkward Emission Targets 725
Parsing IL 728
19. Dynamic Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735
The Dynamic Language Runtime 735
Numeric Type Unification 737
Dynamic Member Overload Resolution 738
Implementing Dynamic Objects 744
Interoperating with Dynamic Languages 747
20. Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 751
Permissions 751
Code Access Security (CAS) 755
Allowing Partially Trusted Callers 758
The Transparency Model in CLR 4.0 761
Sandboxing Another Assembly 769
Operating System Security 772
Identity and Role Security 775
Cryptography Overview 776
Windows Data Protection 777
Hashing 778
Symmetric Encryption 780
Public Key Encryption and Signing 784
21. Threading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789
Threading’s Uses and Misuses 789
Getting Started 791
Thread Pooling 800
Synchronization 805
Locking 808
Thread Safety 817
Nonblocking Synchronization 825
Signaling with Event Wait Handles 832
Signaling with Wait and Pulse 840
The Barrier Class 849
The Event-Based Asynchronous Pattern 851
BackgroundWorker 852
Interrupt and Abort 855
Safe Cancellation 857
Lazy Initialization 860
Thread-Local Storage 862
Reader/Writer Locks 865
Timers 869
x | Table of Contents
22. Parallel Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873
Why PFX? 874
PLINQ 877
The Parallel Class 892
Task Parallelism 898
Working with AggregateException 912
Concurrent Collections 914
SpinLock and SpinWait 920
23. Asynchronous Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 927
Why Asynchronous Methods Exist 927
Asynchronous Method Signatures 928
Asynchronous Methods Versus Asynchronous Delegates 930
Using Asynchronous Methods 930
Asynchronous Methods and Tasks 934
Writing Asynchronous Methods 937
Fake Asynchronous Methods 940
Alternatives to Asynchronous Methods 941
24. Application Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943
Application Domain Architecture 943
Creating and Destroying Application Domains 945
Using Multiple Application Domains 946
Using DoCallBack 948
Monitoring Application Domains 949
Domains and Threads 950
Sharing Data Between Domains 951
25. Native and COM Interoperability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
Calling into Native DLLs 957
Type Marshaling 958
Callbacks from Unmanaged Code 961
Simulating a C Union 962
Shared Memory 963
Mapping a Struct to Unmanaged Memory 965
COM Interoperability 969
Calling a COM Component from C# 971
Embedding Interop Types 975
Primary Interop Assemblies 975
Exposing C# Objects to COM 976
26. Regular Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977
Regular Expression Basics 977
Quantifiers 982
Zero-Width Assertions 983
Table of Contents | xi
Groups 985
Replacing and Splitting Text 987
Cookbook Regular Expressions 988
Regular Expressions Language Reference 992
Appendix: C# Keywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005
2010-04-25
IIS 6: The Complete Reference
Table of Contents
IIS 6—The Complete Reference
Introduction
Part I - Basic IIS Services
Chapter 1 - IIS Fundamentals
Chapter 2 - The WWW Service
Chapter 3 - The FTP Service
Chapter 4 - The SMTP Service
Chapter 5 - The NNTP Service
Part II - IIS Administration
Chapter 6 - Security
Chapter 7 - Authentication
Chapter 8 - TCP/IP and DNS
Chapter 9 - Administration Tasks
Chapter 10 - Encryption
Chapter 11 - Logging
Part III - IIS Programming
Chapter 12 - ASP Programming
Chapter 13 - COM Web Programming
Chapter 14 - ASP.NET Web Forms
Chapter 15 - ASP.NET Web Services
Chapter 16 - ATL Server
Chapter 17 - ISAPI Extensions
Part IV - IIS Extras
Chapter 18 - Software Process and Methodology for Web Applications
Chapter 19 - Bringing It All Together: Creating Your Own Web Site Using IIS
Chapter 20 - Troubleshooting
Appendix - XML Escape Values
Index
List of Figures
List of Tables
List of Listings
List of Sidebars
2010-02-28
C++:The Complete Reference,4th Edition
Contents at a Glance
Part I The Foundation of C++: The C Subset
1 An Overview of C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3 Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4 Arrays and Null-Terminated Strings . . . . . . . . . . . . . . . . 89
5 Pointers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
7 Structures, Unions, Enumerations,
and User-Defined Types . . . . . . . . . . . . . . . . . . . . . . . . 161
8 C-Style Console I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
9 File I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
10 The Preprocessor and Comments . . . . . . . . . . . . . . . . . . 237
Part II C++
11 An Overview of C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
12 Classes and Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
v
13 Arrays, Pointers, References, and the Dynamic
Allocation Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
14 Function Overloading, Copy Constructors,
and Default Arguments . . . . . . . . . . . . . . . . . . . . . . . . . 359
15 Operator Overloading . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
16 Inheritance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
17 Virtual Functions and Polymorphism . . . . . . . . . . . . . . . 443
18 Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
19 Exception Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
20 The C++ I/O System Basics . . . . . . . . . . . . . . . . . . . . . . . 509
21 C++ File I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
22 Run-Time Type ID and the Casting Operators . . . . . . . 567
23 Namespaces, Conversion Functions,
and Other Advanced Topics . . . . . . . . . . . . . . . . . . . . . 591
24 Introducing the Standard Template Library . . . . . . . . . . 629
Part III The Standard Function Library
25 The C-Based I/O Functions . . . . . . . . . . . . . . . . . . . . . . . 699
26 The String and Character Functions . . . . . . . . . . . . . . . . 723
27 The Mathematical Functions . . . . . . . . . . . . . . . . . . . . . . 737
28 Time, Date, and Localization Functions . . . . . . . . . . . . . 747
29 The Dynamic Allocation Functions . . . . . . . . . . . . . . . . . 757
30 Utility Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761
31 The Wide-Character Functions . . . . . . . . . . . . . . . . . . . . . 775
Part IV The Standard C++ Class Library
32 The Standard C++ I/O Classes . . . . . . . . . . . . . . . . . . . . 787
33 The STL Container Classes . . . . . . . . . . . . . . . . . . . . . . . . 811
34 The STL Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839
35 STL Iterators, Allocators, and Function Objects . . . . . . 861
36 The String Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881
37 The Numeric Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897
38 Exception Handling and Miscellaneous Classes . . . . . . 925
vi C + + : T h e C o m p l e t e R e f e r e n c e
Part V Applying C++
39 Integrating New Classes: A Custom String Class . . . . . 935
40 Parsing Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
A The .NET Managed Extensions to C++ . . . . . . . . . . . . . . 999
B C++ and the Robotics Age . . . . . . . . . . . . . . . . . . . . . . . . 1005
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009
2010-02-05
JavaScript 2.0: The Complete Reference, Second Edition
JavaScript 2.0: The Complete Reference, Second Edition
2008-11-14
Pro ASP.NET 2.0 in C# 2005,Special Edition.part3
Pro_ASP.NET_2.0_in_C#_2005,_Special_Edition
2008-07-23
Pro ASP.NET 2.0 in C# 2005,Special Edition.part2
Pro_ASP.NET_2.0_in_C#_2005,Special_Edition
2008-07-23
基本GIS系统的开发
从网上下载的代码资料,看了感觉还不错,拿来与大家分享。
近年来,地理信息系统(GIS)是储存和处理与地理空间分布有关信息的集合。在各行各业得到越来越广泛的应用,GIS以其混合数据结构和独特的地理空间分析功能独树一帜 在税务系统中也开始广泛的应用,不仅仅表现为提高管理的效率,而且增加了管理的功能。通过对组件式GIS技术的分析,还比较了WebGIS和VC++等技术,我们决定选用VC++基于进行GIS的开发企业分布地理信息系统。 本系统借助计算机完成企业的分布的电子地图,首先注册才能获取应用的权限,实现了鹰眼功能,一个地区地图的放大 缩小 漫游,箭头 编号标柱 点选 框选 圆选 选择符号 图层控制 按企业编号,企业名字查找 及企业的添加,删除等功能,当然后几项功能只有管理员才可以有使用权限。当选择选择方式进行选择之后,可以显示出被选中企业的名字,然后你可以点击企业的名字在地图上就会把这个企业的位置显放大显示在中心位置,况且不断的闪烁,还可以显示企业的详细信息。
2007-08-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人