Primer c++ 第5版pdf

下載地址:網盤下載


內容簡介??·?·?·?·?·?·

作者簡介??·?·?·?·?·?·

Stanley B. Lippman目前是微軟公司 Visual C++ 團隊的架構師。他從1984年開始在貝爾實驗室與C++的設計者Bjarne Stroustrup一起從事C++的設計與開發。他在迪士尼和夢工廠從事動畫制作,還擔任過JPL的高級顧問。

Josée Lajoie曾經是IBM加拿大研究中心C/C++編譯器開發團隊的成員,在ISO C++標準委員會工作了7年,擔任過ISO核心語言工作組的主席和C++ Report雜志的專欄作家。

Barbara E. Moo是擁有25年軟件經驗的獨立咨詢顧問。在AT&T,她與Stroustrup、Lippman一起管理過復雜的C++開發項目。

目錄??·?·?·?·?·?·

第1章 開始 1
1.1 編寫一個簡單的C++程序 2
1.1.1 編譯、運行程序 3
1.2 初識輸入輸出 5
1.3 注釋簡介 8
1.4 控制流 10
1.4.1 while語句 10
1.4.2 for語句 11
1.4.3 讀取數量不定的輸入數據 13
1.4.4 if語句 15
1.5 類簡介 17
1.5.1 Sales_item類 17
1.5.2 初識成員函數 20
1.6 書店程序 21
小結 23
術語表 23
第Ⅰ部分 C++基礎 27
第2章 變量和基本類型 29
2.1 基本內置類型 30
2.1.1 算術類型 30
2.1.2 類型轉換 32
2.1.3 字面值常量 35
2.2 變量 38
2.2.1 變量定義 38
2.2.2 變量聲明和定義的關系 41
2.2.3 標識符 42
2.2.4 名字的作用域 43
2.3 復合類型 45
2.3.1 引用 45
2.3.2 指針 47
2.3.3 理解復合類型的聲明 51
2.4 const限定符 53
2.4.1 const的引用 54
2.4.2 指針和const 56
2.4.3 頂層const 57
2.4.4 constexpr和常量表達式 58
2.5 處理類型 60
2.5.1 類型別名 60
2.5.2 auto類型說明符 61
2.5.3 decltype類型指示符 62
2.6 自定義數據結構 64
2.6.1 定義Sales_data類型 64
2.6.2 使用Sales_data類 66
2.6.3 編寫自己的頭文件 67
小結 69
術語表 69
第3章 字符串、向量和數組 73
3.1 命名空間的using聲明 74
3.2 標準庫類型string 75
3.2.1 定義和初始化string對象 76
3.2.2 string對象上的操作 77
3.2.3 處理string對象中的字符 81
3.3 標準庫類型vector 86
3.3.1 定義和初始化vector對象 87
3.3.2 向vector對象中添加元素 90
3.3.3 其他vector操作 91
3.4 迭代器介紹 95
3.4.1 使用迭代器 95
3.4.2 迭代器運算 99
3.5 數組 101
3.5.1 定義和初始化內置數組 101
3.5.2 訪問數組元素 103
3.5.3 指針和數組 105
3.5.4 C風格字符串 109
3.5.5 與舊代碼的接口 111
3.6 多維數組 112
小結 117
術語表 117
第4章 表達式 119
4.1 基礎 120
4.1.1 基本概念 120
4.1.2 優先級與結合律 121
4.1.3 求值順序 123
4.2 算術運算符 124
4.3 邏輯和關系運算符 126
4.4 賦值運算符 129
4.5 遞增和遞減運算符 131
4.6 成員訪問運算符 133
4.7 條件運算符 134
4.8 位運算符 135
4.9 sizeof運算符 139
4.10 逗號運算符 140
4.11 類型轉換 141
4.11.1 算術轉換 142
4.11.2 其他隱式類型轉換 143
4.11.3 顯式轉換 144
4.12 運算符優先級表 147
小結 149
術語表 149
第5章 語句 153
5.1 簡單語句 154
5.2 語句作用域 155
5.3 條件語句 156
5.3.1 if語句 156
5.3.2 switch語句 159
5.4 迭代語句 165
5.4.1 while語句 165
5.4.2 傳統的for語句 166
5.4.3 范圍for語句 168
5.4.4 do while語句 169
5.5 跳轉語句 170
5.5.1 break語句 170
5.5.2 continue語句 171
5.5.3 goto語句 172
5.6 TRY語句塊和異常處理 172
5.6.1 throw表達式 173
5.6.2 try語句塊 174
5.6.3 標準異常 176
小結 178
術語表 178
第6章 函數 181
6.1 函數基礎 182
6.1.1 局部對象 184
6.1.2 函數聲明 186
6.1.3 分離式編譯 186
6.2 參數傳遞 187
6.2.1 傳值參數 187
6.2.2 傳引用參數 188
6.2.3 const形參和實參 190
6.2.4 數組形參 193
6.2.5 main:處理命令行選項 196
6.2.6 含有可變形參的函數 197
6.3 返回類型和return語句 199
6.3.1 無返回值函數 200
6.3.2 有返回值函數 200
6.3.3 返回數組指針 205
6.4 函數重載 206
6.4.1 重載與作用域 210
6.5 特殊用途語言特性 211
6.5.1 默認實參 211
6.5.2 內聯函數和constexpr函數 213
6.5.3 調試幫助 215
6.6 函數匹配 217
6.6.1 實參類型轉換 219
6.7 函數指針 221
小結 225
術語表 225
第7章 類 227
7.1 定義抽象數據類型 228
7.1.1 設計Sales_data類 228
7.1.2 定義改進的Sales_data類 230
7.1.3 定義類相關的非成員函數 234
7.1.4 構造函數 235
7.1.5 拷貝、賦值和析構 239
7.2 訪問控制與封裝 240
7.2.1 友元 241
7.3 類的其他特性 243
7.3.1 類成員再探 243
7.3.2 返回*this的成員函數 246
7.3.3 類類型 249
7.3.4 友元再探 250
7.4 類的作用域 253
7.4.1 名字查找與類的作用域 254
7.5 構造函數再探 257
7.5.1 構造函數初始值列表 258
7.5.2 委托構造函數 261
7.5.3 默認構造函數的作用 262
7.5.4 隱式的類類型轉換 263
7.5.5 聚合類 266
7.5.6 字面值常量類 267
7.6 類的靜態成員 268
小結 273
術語表 273
第Ⅱ部 C++標準庫 275
第8章 IO庫 277
8.1 IO類 278
8.1.1 IO對象無拷貝或賦值 279
8.1.2 條件狀態 279
8.1.3 管理輸出緩沖 281
8.2 文件輸入輸出 283
8.2.1 使用文件流對象 284
8.2.2 文件模式 286
8.3 string流 287
8.3.1 使用istringstream 287
8.3.2 使用ostringstream 289
小結 290
術語表 290
第9章 順序容器 291
9.1 順序容器概述 292
9.2 容器庫概覽 294
9.2.1 迭代器 296
9.2.2 容器類型成員 297
9.2.3 begin和end成員 298
9.2.4 容器定義和初始化 299
9.2.5 賦值和swap 302
9.2.6 容器大小操作 304
9.2.7 關系運算符 304
9.3 順序容器操作 305
9.3.1 向順序容器添加元素 305
9.3.2 訪問元素 309
9.3.3 刪除元素 311
9.3.4 特殊的forward_list操作 312
9.3.5 改變容器大小 314
9.3.6 容器操作可能使迭代器失效 315
9.4 vector對象是如何增長的 317
9.5 額外的string操作 320
9.5.1 構造string的其他方法 321
9.5.2 改變string的其他方法 322
9.5.3 string搜索操作 325
9.5.4 compare函數 327
9.5.5 數值轉換 327
9.6 容器適配器 329
小結 332
術語表 332
第10章 泛型算法 335
10.1 概述 336
10.2 初識泛型算法 338
10.2.1 只讀算法 338
10.2.2 寫容器元素的算法 339
10.2.3 重排容器元素的算法 342
10.3 定制操作 344
10.3.1 向算法傳遞函數 344
10.3.2 lambda表達式 345
10.3.3 lambda捕獲和返回 349
10.3.4 參數綁定 354
10.4 再探迭代器 357
10.4.1 插入迭代器 358
10.4.2 iostream迭代器 359
10.4.3 反向迭代器 363
10.5 泛型算法結構 365
10.5.1 5類迭代器 365
10.5.2 算法形參模式 367
10.5.3 算法命名規范 368
10.6 特定容器算法 369
小結 371
術語表 371
第11章 關聯容器 373
11.1 使用關聯容器 374
11.2 關聯容器概述 376
11.2.1 定義關聯容器 376
11.2.2 關鍵字類型的要求 378
11.2.3 pair類型 379
11.3 關聯容器操作 381
11.3.1 關聯容器迭代器 382
11.3.2 添加元素 383
11.3.3 刪除元素 386
11.3.4 map的下標操作 387
11.3.5 訪問元素 388
11.3.6 一個單詞轉換的map 391
11.4 無序容器 394
小結 397
術語表 397
第12章 動態內存 399
12.1 動態內存與智能指針 400
12.1.1 shared_ptr類 400
12.1.2 直接管理內存 407
12.1.3 shared_ptr和new結合使用 412
12.1.4 智能指針和異常 415
12.1.5 unique_ptr 417
12.1.6 weak_ptr 420
12.2 動態數組 423
12.2.1 new和數組 423
12.2.2 allocator類 427
12.3 使用標準庫:文本查詢程序 430
12.3.1 文本查詢程序設計 430
12.3.2 文本查詢程序類的定義 432
小結 436
術語表 436
第Ⅲ部分 類設計者的工具 437
第13章 拷貝控制 439
13.1 拷貝、賦值與銷毀 440
13.1.1 拷貝構造函數 440
13.1.2 拷貝賦值運算符 443
13.1.3 析構函數 444
13.1.4 三/五法則 447
13.1.5 使用=default 449
13.1.6 阻止拷貝 449
13.2 拷貝控制和資源管理 452
13.2.1 行為像值的類 453
13.2.2 定義行為像指針的類 455
13.3 交換操作 457
13.4 拷貝控制示例 460
13.5 動態內存管理類 464
13.6 對象移動 470
13.6.1 右值引用 471
13.6.2 移動構造函數和移動賦值運算符 473
13.6.3 右值引用和成員函數 481
小結 486
術語表 486
第14章 操作重載與類型轉換 489
14.1 基本概念 490
14.2 輸入和輸出運算符 494
14.2.1 重載輸出運算符<< 494
14.2.2 重載輸入運算符>> 495
14.3 算術和關系運算符 497
14.3.1 相等運算符 497
14.3.2 關系運算符 498
14.4 賦值運算符 499
14.5 下標運算符 501
14.6 遞增和遞減運算符 502
14.7 成員訪問運算符 504
14.8 函數調用運算符 506
14.8.1 lambda是函數對象 507
14.8.2 標準庫定義的函數對象 509
14.8.3 可調用對象與function 511
14.9 重載、類型轉換與運算符 514
14.9.1 類型轉換運算符 514
14.9.2 避免有二義性的類型轉換 517
14.9.3 函數匹配與重載運算符 521
小結 523
術語表 523
第15章 面向對象程序設計 525
15.1 OOP:概述 526
15.2 定義基類和派生類 527
15.2.1 定義基類 528
15.2.2 定義派生類 529
15.2.3 類型轉換與繼承 534
15.3 虛函數 536
15.4 抽象基類 540
15.5 訪問控制與繼承 542
15.6 繼承中的類作用域 547
15.7 構造函數與拷貝控制 551
15.7.1 虛析構函數 552
15.7.2 合成拷貝控制與繼承 552
15.7.3 派生類的拷貝控制成員 554
15.7.4 繼承的構造函數 557
15.8 容器與繼承 558
15.8.1 編寫Basket類 559
15.9 文本查詢程序再探 562
15.9.1 面向對象的解決方案 563
15.9.2 Query_base類和Query類 567
15.9.3 派生類 568
15.9.4 eval函數 571
小結 575
術語表 575
第16章 模板與泛型編程 577
16.1 定義模板 578
16.1.1 函數模板 578
16.1.2 類模板 583
16.1.3 模板參數 592
16.1.4 成員模板 595
16.1.5 控制實例化 597
16.1.6 效率與靈活性 599
16.2 模板實參推斷 600
16.2.1 類型轉換與模板類型參數 601
16.2.2 函數模板顯式實參 603
16.2.3 尾置返回類型與類型轉換 604
16.2.4 函數指針和實參推斷 607
16.2.5 模板實參推斷和引用 608
16.2.6 理解std::move 610
16.2.7 轉發 612
16.3 重載與模板 614
16.4 可變參數模板 618
16.4.1 編寫可變參數函數模板 620
16.4.2 包擴展 621
16.4.3 轉發參數包 622
16.5 模板特例化 624
小結 630
術語表 630
第Ⅳ部分 高級主題 633
第17章 標準庫特殊設施 635
17.1 tuple類型 636
17.1.1 定義和初始化tuple 637
17.1.2 使用tuple返回多個值 638
17.2 BITSET類型 640
17.2.1 定義和初始化bitset 641
17.2.2 bitset操作 643
17.3 正則表達式 645
17.3.1 使用正則表達式庫 646
17.3.2 匹配與Regex迭代器類型 650
17.3.3 使用子表達式 653
17.3.4 使用regex_replace 657
17.4 隨機數 659
17.4.2 其他隨機數分布 663
bernoulli_distribution類 665
17.5 IO庫再探 666
17.5.1 格式化輸入與輸出 666
17.5.2 未格式化的輸入/輸出操作 673
17.5.3 流隨機訪問 676
小結 680
術語表 680
第18章 用于大型程序的工具 683
18.1 異常處理 684
18.1.1 拋出異常 684
18.1.2 捕獲異常 687
18.1.3 函數try語句塊與構造函數 689
18.1.4 noexcept異常說明 690
18.1.5 異常類層次 693
18.2 命名空間 695
18.2.1 命名空間定義 695
18.2.2 使用命名空間成員 701
18.2.3 類、命名空間與作用域 705
18.2.4 重載與命名空間 708
18.3 多重繼承與虛繼承 710
18.3.1 多重繼承 711
18.3.2 類型轉換與多個基類 713
18.3.3 多重繼承下的類作用域 715
18.3.4 虛繼承 717
18.3.5 構造函數與虛繼承 720
小結 722
術語表 722
第19章 特殊工具與技術 725
19.1 控制內存分配 726
19.1.1 重載new和delete 726
19.1.2 定位new表達式 729
19.2 運行時類型識別 730
19.2.1 dynamic_cast運算符 730
19.2.2 typeid運算符 732
19.2.3 使用RTTI 733
19.2.4 type_info類 735
19.3 枚舉類型 736
19.4 類成員指針 739
19.4.1 數據成員指針 740
19.4.2 成員函數指針 741
19.4.3 將成員函數用作可調用對象 744
19.5 嵌套類 746
19.6 union:一種節省空間的類 749
19.7 局部類 754
19.8 固有的不可移植的特性 755
19.8.1 位域 756
19.8.2 volatile限定符 757
19.8.3 鏈接指示:extern "C" 758
小結 762
術語表 762
附錄A 標準庫 765
A.1 標準庫名字和頭文件 766
A.2 算法概覽 770
A.2.1 查找對象的算法 771
A.2.2 其他只讀算法 772
A.2.3 二分搜索算法 772
A.2.4 寫容器元素的算法 773
A.2.5 劃分與排序算法 775
A.2.6 通用重排操作 776
A.2.7 排列算法 778
A.2.8 有序序列的集合算法 778
A.2.9 最小值和最大值 779
A.2.10 數值算法 780
A.3 隨機數 781
A.3.1 隨機數分布 781
A.3.2 隨機數引擎 783
C++11的新特性
2.1.1 long long類型 31
2.2.1 列表初始化 39
2.3.2 nullptr常量 48
2.4.4 constexpr變量 59
2.5.1 類型別名聲明 60
2.5.2 auto類型指示符 61
2.5.3 decltype類型指示符 62
2.6.1 類內初始化 65
3.2.2 使用auto或decltype縮寫類型 79
3.2.3 范圍for語句 82
3.3 定義vector對象的vector(向量的向量) 87
3.3.1 vector對象的列表初始化 88
3.4.1 容器的cbegin和cend函數 98
3.5.3 標準庫begin和end函數 106
3.6 使用auto和decltype簡化聲明 115
4.2 除法的舍入規則 125
4.4 用大括號包圍的值列表賦值 129
4.9 將sizeof用于類成員 139
5.4.3 范圍for語句 168
6.2.6 標準庫initializer_list類 197
6.3.2 列表初始化返回值 203
6.3.3 定義尾置返回類型 206
6.3.3 使用decltype簡化返回類型定義
6.5.2 constexpr函數 214
7.1.4 使用=default生成默認構造函數 237
7.3.1 類對象成員的類內初始化 246
7.5.2 委托構造函數 261
7.5.6 constexpr構造函數 268
8.2.1 用string對象處理文件名 284
9.1 array和forward_list容器 293
9.2.3 容器的cbegin和cend函數 298
9.2.4 容器的列表初始化 300
9.2.5 容器的非成員函數swap 303
9.3.1 容器insert成員的返回類型 308
9.3.1 容器的emplace成員的返回類型 308
9.4 shrink_to_fit 318
9.5.5 string的數值轉換函數 327
10.3.2 Lambda表達式 346
10.3.3 Lambda表達式中的尾置返回類型 353
10.3.4 標準庫bind函數 354
11.2.1 關聯容器的列表初始化 377
11.2.3 列表初始化pair的返回類型 380
11.3.2 pair的列表初始化 384
11.4 無序容器 394
12.1 智能指針 400
12.1.1 shared_ptr類
12.1.2 動態分配對象的列表初始化 407
12.1.2 auto和動態分配 408
12.1.5 unique_ptr類 417
12.1.6 weak_ptr類 420
12.2.1 范圍for語句不能應用于動態分配數組 424
12.2.1 動態分配數組的列表初始化 424
12.2.1 auto不能用于分配數組 424
12.2.2 allocator::construct可使用任意構造函數 428
13.1.5 將=default用于拷貝控制成員 449
13.1.6 使用=default阻止拷貝類對象 449
13.5 用移動類對象代替拷貝類對象 469
13.6.1 右值引用 471
13.6.1 標準庫move函數 472
13.6.2 移動構造函數和移動賦值 473
13.6.2 移動構造函數通常應該是noexcept 473
13.6.2 移動迭代器 480
13.6.3 引用限定成員函數 483
14.8.3 function類模板 512
14.9.1 explicit類型轉換運算符 516
15.2.2 虛函數的override指示符 530
15.2.2 通過定義類為final來阻止繼承 533
15.3 虛函數的override和final指示符 538
15.7.2 刪除的拷貝控制和繼承 553
15.7.4 繼承的構造函數 557
16.1.2 聲明模板類型形參為友元 590
16.1.2 模板類型別名 590
16.1.3 模板函數的默認模板參數 594
16.1.5 實例化的顯式控制 597
16.2.3 模板函數與尾置返回類型 605
16.2.5 引用折疊規則 609
16.2.6 用static_cast將左值轉換為右值 612
16.2.7 標準庫forward函數 614
16.4 可變參數模板 618
16.4 sizeof...運算符 619
16.4.3 可變參數模板與轉發 622
17.1 標準庫Tuple類模板 636
17.2.2 新的bitset運算 643
17.3 正則表達式庫 645
17.4 隨機數庫 659
17.5.1 浮點數格式控制 670
18.1.4 noexcept異常指示符 690
18.1.4 noexcept運算符 691
18.2.1 內聯名字空間 699
18.3.1 繼承的構造函數和多重繼承 712
19.3 有作用域的enum 736
19.3 說明類型用于保存enum對象 738
19.3 enum的提前聲明 738
19.4.3 標準庫mem_fn類模板 746
19.6 類類型的聯合成員 751



下載地址:網盤下載

轉載于:https://www.cnblogs.com/long12365/p/9731743.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/252294.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/252294.shtml
英文地址,請注明出處:http://en.pswp.cn/news/252294.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

eclispe修改project Explorer字體大小

切換到Eclipse目錄下: D:\JAVA\spring-tool-suite\sts-4.0.2.RELEASE\plugins\org.eclipse.ui.themes_1.2.200.v20180828-1350 找到下面的這個css文件 打開找到下面的位置在下面添加代碼:CTabFolder Tree{font-size: 15px;} 復制代碼重啟Eclipse,就可以看到效果 修改前 修改后…

3-4 第三天 Generator生成器

Generator是ES6里面的新增規范&#xff0c;ES6其實就是ES2015。ES5、ES6、ES7這些術語大家上網一查就都明白了。JavaScript是一個范程&#xff0c;就是我們說的JS。ES就是ECMA Script&#xff0c;是JavaScript標準的書面說法。ES4、5、6、7其實是JS這門語言發展中的不同的版本。…

神奇的事情--長見識了

背景&#xff1a;我的這個工程里有多個命名空間&#xff0c;之所以是這樣是因為&#xff0c;有一個跟蹤算法他本身有幾個namespace,然后我在他的基礎上進行整合代碼&#xff0c;將其作為一個功能接口&#xff0c;供其他函數調用&#xff0c;我在整合代碼時&#xff0c;將我新加…

箭頭函數的使用用法(一)

1 //箭頭函數的一個好處是簡化回調函數2 //箭頭函數沒有參數&#xff0c;就使用圓刮號代表參數部分&#xff1b;3 var f () >5;4 console.log(f());5 //兩個參數的情況&#xff0c;代碼塊只有一條語句&#xff0c;可以省略{}6 var f (a,b)> console.log(ab);7 f(1,3);8…

LinkedList中查詢(contains)和刪除(remove)源碼分析

一、contains源碼分析 本文分析雙向鏈表LinkedList的查詢操作源碼實現。jdk中源程序中&#xff0c;LinkedList的查詢操作&#xff0c;通過contains(Object o)函數實現。具體見下面兩部分程序&#xff1a;① public boolean contains(Object o) {return indexOf(o) ! -1; } ② p…

分塊入門

我貌似和所有的數據結構都有些誤會。。。。。。 在處理一些修改查詢問題的時候&#xff0c;我們可以利用分治的思想&#xff0c;比如說把一個線性的數據不斷分成一棵二叉樹&#xff0c;也就是我們所說的線段樹&#xff0c;這樣我們就可以在logn的時限里做到修改和查詢。同理我們…

開始使用gitlab

不得不說&#xff0c;我真不是一個合格的程序猿&#xff0c;工作馬上兩年了&#xff0c;github和gitlab用的一點也不熟練&#xff0c;每次興致來了就搞幾下&#xff0c;可是每次都淺嘗輒止&#xff0c;不求甚解&#xff0c;時間一長&#xff0c;上一次練習的步驟就都記不起來了…

Spark 2.2.0 文檔中文版 Collaborative Filtering 協同過濾 JAVA推薦系統

協同過濾常用于推薦系統&#xff0c;這項技術旨在填補 丟失的user-item關聯矩陣 的條目&#xff0c;spark.ml目前支持基于模型的協同過濾&#xff08;用一些丟失條目的潛在因素在描述用戶和產品&#xff09;。spark.ml使用ALS&#xff08;交替最小二乘法&#xff09;去學習這些…

淘寶top平臺調用接口響應時間優化

我的專欄地址&#xff1a;我的segmentfault,歡迎瀏覽 一、背景 調用top接口的響應時間長&#xff08;160ms左右&#xff09;&#xff0c;超時和連接異常頻繁發生。導致消息組件消費工程的tps遇到瓶頸&#xff08;單實例單消息隊列250tps&#xff09;&#xff0c;只能通過增加實…

樹上倍增一些理解和寫法

樹上倍增可以比較容易求得i節點的第k個父親&#xff0c;我們定義一個二維數組fa[i][j]代表節點i的第2^j個父親&#xff0c;關于有什么用我們等會再說&#xff0c;現在先學會怎么去求這個fa數組 我們可以通過從根節點開始一遍dfs求得所有fa數組&#xff0c;首先我們發現fa數組有…

圖像去畸變和添加畸變

背景&#xff1a;最近的項目中用到的圖像去畸變的知識&#xff0c;剛開始是直接調用opencv中提供的函數cv::initUndistortRectifyMap()和cv::remap()函數&#xff0c;實現圖像的全局去畸變&#xff0c;但是由于圖像的分辨率很高&#xff0c;再加上&#xff0c;實際過程中我們只…

win10上編譯libharu庫

背景&#xff1a; 最近的項目需要自動的生成pdf文件&#xff0c;我在網上查看相關的資料&#xff0c;發現目前比較流行的生成pdf文件的庫有兩個&#xff0c;一個是libpdf&#xff0c;另一個是libharu。libpdf個人使用時免費的但是商業使用就需要收費了&#xff0c;否則得到的p…

爬蟲——正則表達式re模塊

為什么要學習正則表達式 實際上爬蟲一共就四個主要步驟&#xff1a; 明確目標&#xff1a;需清楚目標網站爬&#xff1a;將所有的目標網站的內容全部爬下來取&#xff1a;在爬下來的網站內容中去掉對我們沒有用處的數據&#xff0c;只留取我們需要的數據處理數據&#xff1a;按…

深入Spring Boot:快速集成Dubbo + Hystrix

2019獨角獸企業重金招聘Python工程師標準>>> 背景 Hystrix 旨在通過控制那些訪問遠程系統、服務和第三方庫的節點&#xff0c;從而對延遲和故障提供更強大的容錯能力。Hystrix具備擁有回退機制和斷路器功能的線程和信號隔離&#xff0c;請求緩存和請求打包&#xff…

BZOJ2333 [SCOI2011]棘手的操作 【離線 + 線段樹】

題目 有N個節點&#xff0c;標號從1到N&#xff0c;這N個節點一開始相互不連通。第i個節點的初始權值為a[i]&#xff0c;接下來有如下一些操作&#xff1a; U x y: 加一條邊&#xff0c;連接第x個節點和第y個節點 A1 x v: 將第x個節點的權值增加v A2 x v: 將第x個節點所在的連通…

opencv圖像仿射變換和普通旋轉

背景&#xff1a;今天需要對程序生成的圖像進行旋轉90度和下采樣操作&#xff0c;當然還有改變圖像類型的操作&#xff0c;就是把原來.png的圖像轉換為.jpg的圖像&#xff0c;主要是我目前使用libharu庫&#xff0c;無法成功從本地加載png圖像到pdf中去&#xff0c;不得不使用j…

討厭麻煩的ora 01722無效數字

webservice開發過程中&#xff0c;數據庫由原來的oracle改為現在的sql server。然后重新調試&#xff0c;結果報出ora 01722無效數字的錯誤。 由于連接oracle數據庫的時候并沒有問題&#xff0c;所以一開始我以為是數據庫不同&#xff0c;導致部分數據類型差異&#xff0c;&…

CSS樣式:覆蓋規則

規則一&#xff1a;由于繼承而發生樣式沖突時&#xff0c;最近祖先獲勝。 CSS的繼承機制使得元素可以從包含它的祖先元素中繼承樣式&#xff0c;考慮下面這種情況: <html><head><title>rule 1</title><style>body {color:black;}p {color:blue;}…

try{}里有一個 return 語句,那么緊跟在這個 try 后的 finally {}里的 code 會 不會被執行,什么時候被執行,在 return 前還是后?...

這是一道面試題&#xff0c;首先finally{}里面的code肯定是會執行的&#xff0c;至于在return前還是后&#xff0c; 看答案說的是在return后執行&#xff0c;我覺得不對&#xff0c;百度了一下&#xff0c;有說return前的&#xff0c;有說return后的&#xff0c;還有return中間…

相機和鏡頭選型需要注意哪些問題

背景&#xff1a; 最近需要優于項目需求需要對工業相機和鏡頭進行選型&#xff0c;于是我就開啟的學習相機之旅&#xff0c;雖然我一直在做機器視覺方向&#xff0c;但是我對相機的了解還是很少&#xff0c;我想正好趁這次機會好好學習一下。如果有錯誤的觀點請指正。 一、相…