溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++實施建議有哪些

發布時間:2021-11-25 15:40:24 來源:億速云 閱讀:176 作者:iii 欄目:大數據

本篇內容主要講解“C++實施建議有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C++實施建議有哪些”吧!

In.force: Enforcement(實施建議)

對于大規模代碼來說,不包含實施建議的規則是無法管理的。針對所有規則的實施建議只有在規則數量甚少,針對特定的用戶群體時才可能存在。

  • But we want lots of rules, and we want rules that everybody can use.但是我們想要很多規則,并且我們希望每個人都能用的規則。

  • But different people have different needs.但是不同的人需求也不同。

  • But people don't like to read lots of rules.但是人們不喜歡理解大量規則。

  • But people can't remember many rules.但是人們不能記住大量的規則。

So, we need subsetting to meet a variety of needs.因此我們需要構造規則的子集以滿足不同的需求。

  • But arbitrary subsetting leads to chaos.但是隨心所欲的構造子集會導致混亂。

我們幫助很多人的指南可以使代碼更加統一,并且強烈推薦人們現代化他們的代碼。我們希望鼓勵最佳實踐,而不是把一切留給個人選擇和管理壓力。這個想法適用于所有規則;這會帶來巨大的利益。

這些想法加起來造成非常多的困擾。我們努力使用工具解決這些問題。每條規則都有一個實施建議用來列舉實施相關的想法。實施的方式可以是通過代碼評審,靜態分析,編譯器,或者執行時檢查。只要可能,我們更加推薦機械檢查(人的速度很慢,不準確并且容易厭煩)和靜態檢查。動態檢查只有在沒有其他備選出口時才會被推薦,這種情況很少;我們(在實施建議中)以一組相關規則的統稱(稱為“概述”)為規則打標簽。規則可以是多個從屬于多個不同的概述,或者不屬于任何概述。作為開始,我們已經有幾個概述用于對應常見的需求(愿望,理想)

譯者注:再次強調靜態檢查。

  • type: No type violations (reinterpreting a T as a U through casts, unions, or varargs)類型:沒有類型違反(通過類型轉換,聯合或者可變參數將T重新解釋為U)

  • bounds: No bounds violations (accessing beyond the range of an array)范圍:沒有范圍違反(超出數組范圍訪問)

  • lifetime: No leaks (failing to delete or multiple delete) and no access to invalid objects (dereferencing nullptr, using a dangling reference).聲明周期:沒有泄漏(沒有delete或多重delete)和訪問無效對象(對空指針取值,使用野指針)

概述的目的是被工具使用,但也可以幫助人類讀者。對用戶那些我們知道如何實施的規則,我們不會在實施建議中吝惜我們的描述。有些解釋僅僅是希望啟發某些工具構建者的思考。

Tools that implement these rules shall respect the following syntax to explicitly suppress a rule:

實現這些規則的工具應該遵守下面的語法以便明確地抑制某條規則。

[[gsl::suppress(tag)]]

這里“tag”是一個項目的錨名稱,這里應該出現實施建議(例如對于C.134來說是“Rh-publicc”),規則組名稱(“type”,“bounds”,或者“lefttime”),或者概述中的特定規則。

譯者注:抑制的含義是忽略某條規則。

到此,相信大家對“C++實施建議有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女