1 2 3<!DOCTYPE html> 4<html lang="zh-CN" data-default-color-scheme=auto> 5 6 7 8<head> 9 <meta charset="UTF-8"> 10 <link rel="apple-touch-icon" sizes="76x76" href="/img/fluid.png"> 11 <link rel="icon" href="/img/fluid.png"> 12 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, shrink-to-fit=no"> 13 <meta http-equiv="x-ua-compatible" content="ie=edge"> 14 15 <meta name="theme-color" content="#2f4154"> 16 <meta name="author" content="è¾å"> 17 <meta name="keywords" content=""> 18 19 <meta property="og:type" content="website"> 20<meta property="og:title" content="彿¡£"> 21<meta property="og:url" content="https://wenchanyuan.com/archives/index.html"> 22<meta property="og:site_name" content="Chanyuan's blog"> 23<meta property="og:locale" content="zh_CN"> 24<meta property="article:author" content="è¾å"> 25<meta name="twitter:card" content="summary_large_image"> 26 27 28 29 <title>彿¡£ - Chanyuan's blog</title> 30 31 <link rel="stylesheet" href="https://lib.baomitu.com/twitter-bootstrap/4.6.1/css/bootstrap.min.css" /> 32 33 34 35 36 37<!-- 主é¢ä¾èµç徿 åºï¼ä¸è¦èªè¡ä¿®æ¹ --> 38<!-- Do not modify the link that theme dependent icons --> 39 40<link rel="stylesheet" href="//at.alicdn.com/t/font_1749284_hj8rtnfg7um.css"> 41 42 43 44<link rel="stylesheet" href="//at.alicdn.com/t/font_1736178_lbnruvf0jn.css"> 45 46 47<link rel="stylesheet" href="/css/main.css" /> 48 49 50 <link id="highlight-css" rel="stylesheet" href="/css/highlight.css" /> 51 52 <link id="highlight-css-dark" rel="stylesheet" href="/css/highlight-dark.css" /> 53 54 55 56 57 58
58<script id="fluid-configs"> 59 var Fluid = window.Fluid || {}; 60 Fluid.ctx = Object.assign({}, Fluid.ctx) 61 var CONFIG = {"hostname":"wenchanyuan.com","root":"/","version":"1.9.2","typing":{"enable":false,"typeSpeed":70,"cursorChar":"_","loop":false,"scope":[]},"anchorjs":{"enable":true,"element":"h1,h2,h3,h4,h5,h6","placement":"left","visible":"hover","icon":""},"progressbar":{"enable":true,"height_px":3,"color":"#29d","options":{"showSpinner":false,"trickleSpeed":100}},"code_language":{"enable":true,"default":"TEXT"},"copy_btn":true,"image_caption":{"enable":true},"image_zoom":{"enable":true,"img_url_replace":["",""]},"toc":{"enable":true,"placement":"right","headingSelector":"h1,h2,h3,h4,h5,h6","collapseDepth":0},"lazyload":{"enable":true,"loading_img":"/img/loading.gif","onlypost":false,"offset_factor":2},"web_analytics":{"enable":false,"follow_dnt":true,"baidu":null,"google":null,"gtag":null,"tencent":{"sid":null,"cid":null},"woyaola":null,"cnzz":null,"leancloud":{"app_id":null,"app_key":null,"server_url":null,"path":"window.location.pathname","ignore_local":false}},"search_path":"/local-search.xml"}; 62 63 if (CONFIG.web_analytics.follow_dnt) { 64 var dntVal = navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack; 65 Fluid.ctx.dnt = dntVal && (dntVal.startsWith('1') || dntVal.startsWith('yes') || dntVal.startsWith('on')); 66 } 67 </script>
67 68
68<script src="/js/utils.js" ></script>
68 69
69<script src="/js/color-schema.js" ></script>
69 70 71 72 73 74<meta name="generator" content="Hexo 5.4.0"></head> 75 76 77<body> 78 79 80 <header> 81 82 83<div class="header-inner" style="height: 60vh;"> 84 <nav id="navbar" class="navbar fixed-top navbar-expand-lg navbar-dark scrolling-navbar"> 85 <div class="container"> 86 <a class="navbar-brand" href="/"> 87 <strong>ä¿æç®å</strong> 88 </a> 89 90 <button id="navbar-toggler-btn" class="navbar-toggler" type="button" data-toggle="collapse" 91 data-target="#navbarSupportedContent" 92 aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> 93 <div class="animated-icon"><span></span><span></span><span></span></div> 94 </button> 95 96 <!-- Collapsible content --> 97 <div class="collapse navbar-collapse" id="navbarSupportedContent"> 98 <ul class="navbar-nav ml-auto text-center"> 99 100 101 102 103 104 <li class="nav-item"> 105 <a class="nav-link" href="/"> 106 <i class="iconfont icon-home-fill"></i> 107 é¦é¡µ 108 </a> 109 </li> 110 111 112 113 114 115 116 <li class="nav-item"> 117 <a class="nav-link" href="/archives/"> 118 <i class="iconfont icon-archive-fill"></i> 119 彿¡£ 120 </a> 121 </li> 122 123 124 125 126 127 128 <li class="nav-item"> 129 <a class="nav-link" href="/categories/"> 130 <i class="iconfont icon-category-fill"></i> 131 åç±» 132 </a> 133 </li> 134 135 136 137 138 139 140 <li class="nav-item"> 141 <a class="nav-link" href="/tags/"> 142 <i class="iconfont icon-tags-fill"></i> 143 æ ç¾ 144 </a> 145 </li> 146 147 148 149 150 151 152 <li class="nav-item"> 153 <a class="nav-link" href="/book/"> 154 <i class="iconfont icon-book"></i> 155 书 156 </a> 157 </li> 158 159 160 161 162 163 164 <li class="nav-item"> 165 <a class="nav-link" href="/movies/"> 166 <i class="iconfont icon-youtube-fill"></i> 167 çµå½± 168 </a> 169 </li> 170 171 172 173 174 175 176 <li class="nav-item"> 177 <a class="nav-link" href="/works/"> 178 <i class="iconfont icon-image"></i> 179 ä½å 180 </a> 181 </li> 182 183 184 185 186 187 188 <li class="nav-item"> 189 <a class="nav-link" href="/about/"> 190 <i class="iconfont icon-user-fill"></i> 191 å ³äº 192 </a> 193 </li> 194 195 196 197 <li class="nav-item" id="search-btn"> 198 <a class="nav-link" target="_self" href="javascript:;" data-toggle="modal" data-target="#modalSearch" aria-label="Search"> 199 <i class="iconfont icon-search"></i> 200 </a> 201 </li> 202 203 204 205 <li class="nav-item" id="color-toggle-btn"> 206 <a class="nav-link" target="_self" href="javascript:;" aria-label="Color Toggle"> <i 207 class="iconfont icon-dark" id="color-toggle-icon"></i> </a> 208 </li> 209 210 </ul> 211 </div> 212 </div> 213</nav> 214 215 216 217<div id="banner" class="banner" parallax=true 218 style="background: url('https://blogs.bj.bcebos.com/uPic/index.png') no-repeat center center; background-size: cover;"> 219 <div class="full-bg-img"> 220 <div class="mask flex-center" style="background-color: rgba(0, 0, 0, 0.3)"> 221 <div class="banner-text text-center fade-in-up"> 222 <div class="h2"> 223 224 <span id="subtitle">彿¡£</span> 225 226 </div> 227 228 229 </div> 230 231 232 </div> 233 </div> 234</div> 235 236</div> 237 238 </header> 239 240 <main> 241 242 <div class="container nopadding-x-md"> 243 <div id="board" 244 > 245 246 <div class="container"> 247 <div class="row"> 248 <div class="col-12 col-md-10 m-auto"> 249 250 251<div class="list-group"> 252 <p class="h4">å ±è®¡ 33 ç¯æç« </p> 253 <hr> 254 255
256 257 258 <p class="h5">2022</p> 259 260 <a href="/think_of_software_engineering/" class="list-group-item list-group-item-action"> 261 <time>08-20</time> 262 <div class="list-group-item-title">å ³äºè½¯ä»¶å·¥ç¨çæè</div> 263 </a> 264 265 266 <a href="/end_of_summer/" class="list-group-item list-group-item-action"> 267 <time>07-17</time> 268 <div class="list-group-item-title">æåçå¤å¤©</div> 269 </a> 270 271 272 <a href="/why_i_stop_update_blog/" class="list-group-item list-group-item-action"> 273 <time>07-10</time> 274 <div class="list-group-item-title">æä¸ºä»ä¹åæ´å客äº</div> 275 </a> 276 277 278 279 <p class="h5">2021</p> 280 281 <a href="/best_practice_of_bookkeeping/" class="list-group-item list-group-item-action"> 282 <time>11-26</time> 283 <div class="list-group-item-title">è®°è´¦çæä½³å®è·µ</div> 284 </a> 285 286 287 288 <p class="h5">2020</p> 289 290 <a href="/swift_logger_in_ios14/" class="list-group-item list-group-item-action"> 291 <time>10-21</time> 292 <div class="list-group-item-title">Swift å¦ä¹ ç¬è®°ââiOS 14 ä¸ç Logger</div> 293 </a> 294 295 296 <a href="/swift_format_string/" class="list-group-item list-group-item-action"> 297 <time>09-29</time> 298 <div class="list-group-item-title">Swift ä¸çæ ¼å¼åå符串</div> 299 </a> 300 301 302 <a href="/leetcode_workflow/" class="list-group-item list-group-item-action"> 303 <time>08-16</time> 304 <div class="list-group-item-title">èªç¨ LeetCode å·é¢æµç¨</div> 305 </a> 306 307 308 <a href="/swift_difference_of_weak_and_unowned/" class="list-group-item list-group-item-action"> 309 <time>08-13</time> 310 <div class="list-group-item-title">Swift å¦ä¹ ç¬è®°ââweak å unowned çåºå«</div> 311 </a> 312 313 314 <a href="/binary_search/" class="list-group-item list-group-item-action"> 315 <time>06-05</time> 316 <div class="list-group-item-title">ï¼è½¬è½½ï¼äºåæ¥æ¾ç»è详解</div> 317 </a> 318 319 320 <a href="/leetcode_notebook(800-899)/" class="list-group-item list-group-item-action"> 321 <time>05-23</time> 322 <div class="list-group-item-title">LeetCodeå·é¢ç¬è®°ï¼800-899ï¼</div> 323 </a> 324 325</div> 326 327 328 <nav aria-label="navigation"> 329 <span class="pagination" id="pagination"> 330 <span class="page-number current">1</span><a class="page-number" href="/archives/page/2/#board">2</a><a class="page-number" href="/archives/page/3/#board">3</a><a class="page-number" href="/archives/page/4/#board">4</a><a class="extend next" rel="next" href="/archives/page/2/#board"><i class="iconfont icon-arrowright"></i></a> 331 </span> 332 </nav> 333 334 335 336 337 </div> 338 </div> 339 </div> 340 </div> 341 </div> 342 343 344 345 <a id="scroll-top-button" aria-label="TOP" href="#" role="button"> 346 <i class="iconfont icon-arrowup" aria-hidden="true"></i> 347 </a> 348 349 350 351 <div class="modal fade" id="modalSearch" tabindex="-1" role="dialog" aria-labelledby="ModalLabel" 352 aria-hidden="true"> 353 <div class="modal-dialog modal-dialog-scrollable modal-lg" role="document"> 354 <div class="modal-content"> 355 <div class="modal-header text-center"> 356 <h4 class="modal-title w-100 font-weight-bold">æç´¢</h4> 357 <button type="button" id="local-search-close" class="close" data-dismiss="modal" aria-label="Close"> 358 <span aria-hidden="true">×</span> 359 </button> 360 </div> 361 <div class="modal-body mx-3"> 362 <div class="md-form mb-5"> 363 <input type="text" id="local-search-input" class="form-control validate"> 364 <label data-error="x" data-success="v" for="local-search-input">å ³é®è¯</label> 365 </div> 366 <div class="list-group" id="local-search-result"></div> 367 </div> 368 </div> 369 </div> 370</div> 371 372 373 374 375 </main> 376 377 <footer> 378 <div class="footer-inner"> 379 380 <div class="footer-content"> 381 <a href="https://hexo.io" target="_blank" rel="nofollow noopener"><span>Hexo</span></a> <i class="iconfont icon-love"></i> <a href="https://github.com/fluid-dev/hexo-theme-fluid" target="_blank" rel="nofollow noopener"><span>Fluid</span></a> 382 </div> 383 384 385 386 387</div> 388 389 </footer> 390 391 <!-- Scripts --> 392 393
393<script src="https://lib.baomitu.com/nprogress/0.2.0/nprogress.min.js" ></script>
393 394 <link rel="stylesheet" href="https://lib.baomitu.com/nprogress/0.2.0/nprogress.min.css" /> 395 396
396<script> 397 NProgress.configure({"showSpinner":false,"trickleSpeed":100}) 398 NProgress.start() 399 window.addEventListener('load', function() { 400 NProgress.done(); 401 }) 402 </script>
402 403 404
405<script src="https://lib.baomitu.com/jquery/3.6.0/jquery.min.js" ></script>
vendor: 1 bytes, line 405
405
406<script src="https://lib.baomitu.com/twitter-bootstrap/4.6.1/js/bootstrap.min.js" ></script>
vendor: 1 bytes, line 406
406
407<script src="/js/events.js" ></script>
vendor: 1 bytes, line 407
407
408<script src="/js/plugins.js" ></script>
408 409 410 411 412 413 414 415
415<script src="/js/img-lazyload.js" ></script>
415 416 417 418 419 420 421
421<script src="/js/local-search.js" ></script>
421 422 423 424 425 426 427<!-- 主é¢çå¯å¨é¡¹ï¼å°å®ä¿æå¨æåºé¨ --> 428<!-- the boot of the theme, keep it at the bottom -->
429<script src="/js/boot.js" ></script>
429 430 431 432 433 434 <noscript> 435 <div class="noscript-warning">å客å¨å 许 JavaScript è¿è¡çç¯å¢ä¸æµè§æææ´ä½³</div> 436 </noscript> 437</body> 438</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.