国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

您需要了解的有關下一個MISRA?標準的信息:MISRA C++ 2023?簡介

北匯信息POLELINK ? 2023-08-25 18:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

MISRA C++:2023?是廣受期待的MISRA C++ ?標準的下一個版本,將于今年晚些時候發布。新版本將整合AUTOSAR C++14指南,并支持C++的最新版本。

MISRA?是由汽車行業軟件可靠性協會(MISRA)開發的一套C和C++編碼標準,不僅是汽車行業的最佳標準之一,也是任何使用嵌入式系統的行業的最佳標準之一。

為了幫助您為即將發布的版本做好準備,我們推出了一個由我們的MISRA專家Frank van den Beuken博士撰寫的關于MISRA C++:2023概述的博客系列。

1??MISRA C++ ?背景

MISRA C++于2008年發布。它為ISO C++2003編寫的安全相關軟件的開發提供了專家指導。這套指南已被廣泛采用,合規性已成為許多安全關鍵項目的強制性要求。然而,從那時起,C++語言發生了很大變化,新版本引入了新的語言功能并改變了現有的功能。

使用較新C++語言版本的項目可能不符合MISRA C++ 2008的所有規則。為了為這些后續版本提供指南,AUTOSAR為C++14開發了新的指南,該指南基于MISRA C++:2008,但通過其他標準的規則進行了增強。

MISRA C++工作組目前正在根據AUTOSAR指南對MISRA C++進行更新,該適用于C++17,但包括MISRA在安全相關C++開發方面的既定最佳實踐。預計更新后的標準將于今年晚些時候發布。

人們對新的MISRA C++指南非常感興趣。然而,由于MISRA C++:2008已被許多項目采用,此對改用新指南的影響存在一些擔憂。

2??MISRA C++:2023?博客系列預覽

在本博客系列中,我們將討論新標準的多個方面。

??C++和MISRA C++的歷史

我們將從C++編程語言的歷史概述開始,從1979年貝爾實驗室的Bjarne Stroustrup提出的C++編程語言概念,到1991年開始標準化,再到目前的C++20版本。

值得注意的是,C++20中添加的一些主要功能在很久以前就已經討論過了。模塊和概念就是這種情況,它們是為并發編程的標準化特性提供庫實現和協同程序的新穎特性。直到現在,并發支持才成為標準的一部分,盡管這些是與程序組織一起與C的效率相結合的Simula編程語言功能。

然而,必須指出的是,MISRA C++仍然基于C++17。主要原因是編譯器的實現程序需要時間來為所有語言功能提供支持,然后此類實現也需要經過認證才能用于安全關鍵項目。

隨著時間的推移,已經編寫了許多不同的C++編碼標準。我們已經提到了AUTOSAR指南,但也有許多其他流行的編碼標準在使用中。今年的《汽車軟件開發狀況報告 》介紹了400名汽車開發專業人士對汽車軟件行業當前實踐和新興趨勢的回答。隨著電動和半自動駕駛汽車發展的持續增長,以及隨之而來的軟件組件的增加,研究結果繼續表明 ,信息安全與功能安全一樣重要,這是一個主要問題。這反映在對遵守安全標準的要求日益增加。

報告還顯示,MISRA仍然是汽車行業最受歡迎的編碼標準,42%的受訪者使用MISRA編碼標準。鑒于MISRA的悠久歷史及其汽車根源,這并不奇怪。AUTOSAR是一種在汽車軟件平臺背景下開發的最新編碼標準,其最終更新于2018年,以36%的得票率位居第三。C++核心指南標準出人意料地以39%的得票率位居第二,盡管該標準與汽車行業沒有明顯的關系。它如此受歡迎可能是因為它涵蓋了開發人員想要使用的最新C++語言功能。

wKgaomTofFmAeNoeAAFFnmIeNZ4932.png

??C++編碼標準的幾個方面

該標準由Bjarne Stroustrup和Herb Sutter推出,是一份不斷改進的動態文件。C++核心指南也被用作AUTOSAR的來源,因為它涵蓋了最新的C++語言功能。AUTOSAR包括兩個標準之間的比較,表明30%的C++核心指南與AUTOSAR規則沖突。MISRA C++:2023繼承了AUTOSAR的許多規則,但沒有直接引用C++核心指南。

我們將專門寫一篇博客來比較這些C++編碼標準的各個方面,包括理念、指南、實施和聲明合規性。由于MISRA C++:2023似乎不太可能接受所有AUTOSAR規則,我們將評估與C++核心指南相沖突的規則部分是否仍然如此之大。

??MISRA C++:2023的新指南和新規則

最后,我們將在一些博客中專門介紹一些新穎的指南。

MISRA C++規則12.0.1 “應適當提供特殊成員功能”是一項新規則,為定義類類型的接口提供了指導。它提倡“零規則”, 它提倡“零規則”,這意味著它不喜歡指定特殊的成員函數,因為語言標準已經保證編譯器已經提供了預期的實現。

這與其他指南相矛盾,例如“五法則”(如果還單獨計算默認構造函數,則為六),該指南指出需要始終顯式指定所有特殊成員函數。

但是,這也存在風險,從為 AUTOSAR 規則A12-0-1提供的合規示例可以看出:

Plaintext

class A // Compliant - the class A follow the "Rule of six" rule

{

public:

A(); // Non-default constructor

~A() = default;

A(A const&) = default;

A& operator=(A const&) = default;

A(A&&) = delete;

A& operator=(A&&) = delete;

};

我們可以看到,只有移動構造函數被刪除,復制函數和析構函數是默認的。此代碼可能是開發人員將遵循“三法則”的代碼擴展為“五法則”的結果,但試圖通過刪除新的移動構造函數來保留舊的行為結果。MISRA C++不允許這種特殊成員函數的組合;如果一個類提供復制函數,那么它也必須提供移動構造函數。該類的問題在于它不能與容器一起使用,例如,當試圖聲明該類型的向量時,由于缺少移動構造函數,將發生編譯錯誤。

預計會產生重大影響的準則是細則4.0.6,“數字類型之間的分配應適當”。此規則禁止許多隱式類型轉換。熟悉MISRA C:2012的開發人員可能希望擁有與MISRA C基本類型定義的類似類型轉換規則,但事實并非如此。

MISRA C++ 要嚴格得多,這是有原因的:與C相反,C++提供了函數重載,這取決于表達式的確切類型和自動占位符類型說明符,其中類型是從表達式派生的。如果不遵守規則,則可能是包含頭文件會導致函數重載比之前匹配的函數匹配得更好,這可能是出乎意料的。有一種安全的方法可以避免隱式轉換,方法是使用具有整型基礎類型的類型安全枚舉類型。此類強類型的值不受隱式轉換的影響。

3??確保MISRA符合Helix QAC的要求

Perforce的Helix QAC是一種靜態分析工具,在提供MISRA C和MISRA C++合規性檢查以及許多其他有價值的分析功能方面處于領先地位。

Helix QAC提供合規模塊,用于執行MISRA C和MISRA C++的所有版本和修訂,包括MISRA C:2023。Perforce計劃在正式發布日期臨近時提供完整的MISRA C++:2023合規模塊。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 測試
    +關注

    關注

    9

    文章

    6203

    瀏覽量

    131357
  • 嵌入式
    +關注

    關注

    5198

    文章

    20449

    瀏覽量

    334048
  • MISRA
    +關注

    關注

    0

    文章

    22

    瀏覽量

    7437
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嵌入式開發是否會成為下一個被看好的領域?

    聊嵌入式開發會不會成為下一個風口,現在確實是挺熱門的話題。各種論壇、投資報告都在講物聯網、智能硬件、AIoT的萬億市場,仿佛只要跟嵌入式沾邊,就能乘著東風起飛。但如果套用我們剛才聊的那套邏輯,就會發現,這事兒還真“不好說”,得把那些熱鬧的表面詞藻扒開,看看里面的筋骨。
    的頭像 發表于 02-26 09:56 ?429次閱讀
    嵌入式開發是否會成為<b class='flag-5'>下一個</b>被看好的領域?

    C語言安全編碼指南:MISRA C、CERT C、CWE 與 C Secure 標準對比與Perforce QAC應用詳解

    如何編寫真正安全的C語言代碼?指南涵蓋MISRA C、CERT、CWE等國際安全編碼標準對比,以及如何借助Perforce QAC自動檢測漏洞。推薦給嵌入式/汽車/工業軟件的開發者!
    的頭像 發表于 01-26 17:38 ?812次閱讀
    <b class='flag-5'>C</b>語言安全編碼指南:<b class='flag-5'>MISRA</b> <b class='flag-5'>C</b>、CERT <b class='flag-5'>C</b>、CWE 與 <b class='flag-5'>C</b> Secure <b class='flag-5'>標準</b>對比與Perforce QAC應用詳解

    keil實現cc++混合編程

    參考touchgfx生成的代碼,發現了需要添加--cpp11 參數的解決方法,具體操作如下。 、創建
    發表于 01-26 08:58

    汽車網絡安全開發語言選型指南:C/C++/Rust/Java等主流語言對比+Perforce QAC/Klocwork工具支持

    汽車網絡安全如何選編程語言?C、C++、Rust、Java……誰更適合AUTOSAR、ISO/SAE 21434?了解8種主流語言的優劣與適用場景,以及Perforce QAC/K
    的頭像 發表于 12-26 11:13 ?426次閱讀
    汽車網絡安全開發語言選型指南:<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>/Rust/Java等主流語言對比+Perforce QAC/Klocwork工具支持

    半導體測試,是“下一個前沿”

    ,但半導體測試是“下一個前沿”,它是設計與制造之間的橋梁,解決了傳統分離領域之間模糊的界限。更具體地說,通過連接設計和制造,測試可以幫助產品和芯片公司更快地生產出
    的頭像 發表于 12-26 10:02 ?543次閱讀
    半導體測試,是“<b class='flag-5'>下一個</b>前沿”

    C語言和C++之間的區別是什么

    處理的問題時拋出異常,并在其他地方捕獲和處理這些異常。 C語言沒有內建的異常處理機制,般通過返回錯誤代碼或設置全局錯誤標志等方式處理錯誤。 5、標準庫支持: C++擁有豐富且強大的
    發表于 12-11 06:23

    C/C++條件編譯

    。 #elif:結合 #if 使用,表示如果前面的條件不成立,繼續判斷下一個條件。 #else:與 #if 或 #elif 配合使用,表示條件不成立時執行下面的代碼塊。 #endif:結束條件編譯塊。
    發表于 12-05 06:21

    電纜槽:需要了解的電纜管理知識

    ,保護電纜免受物理損壞或潛在的電氣火災。在本文中,我們將介紹有關電纜線槽的所有信息,使您能夠根據自己的特定需求做出正確的選擇。 什么是電纜槽? 電纜槽是種空心通道,有助于封閉和保護家庭或辦公室內的網絡和電纜。電纜
    的頭像 發表于 12-02 10:33 ?401次閱讀

    科技云報到:西湖大學、智元機器人都選它,存儲成為AI下一個風口

    科技云報到:西湖大學、智元機器人都選它,存儲成為AI下一個風口
    的頭像 發表于 09-03 11:24 ?688次閱讀

    【原創】TDMS設置下一個寫入位置函數的摸索

    labview在20版本前,tdms都有高級函數,寫入文件位置set file positon,但是在20版本后被取消了。取而代之是‘tdms設置下一個寫入位置函數’ 本意是想利用tdms設置
    發表于 08-11 20:54

    AI玩具或成為下一個萬億新賽道

    如果你將擁有家庭新成員,你首先會想到什么?是孩子還是寵物?如果我說你下一個家庭成員,或許是會“察言觀色”的AI玩具,這件事是不是聽上
    的頭像 發表于 07-29 10:15 ?1103次閱讀

    Helix QAC 2025.1 重磅發布!MISRA C:2025? 100%覆蓋

    Helix QAC 2025.1新增功能 Helix QAC 2025.1實現了對新版MISRA C:2025?標準的 100% 覆蓋,并提供對應的合規模塊。此版本還擴展了對 CERT C
    的頭像 發表于 05-13 16:48 ?1461次閱讀
    Helix QAC 2025.1 重磅發布!<b class='flag-5'>MISRA</b> <b class='flag-5'>C</b>:2025? 100%覆蓋

    MISRA C:2025新標準解析:新增規則、優化點與靜態代碼分析工具支持(Perforce QAC、Klocwork)

    MISRA C:2025?發布!新增5條規則,并對部分現有規則進行了擴展、重組,以進步簡化安全關鍵型系統的開發流程。如何實現最新MISRA合規性?
    的頭像 發表于 05-08 17:58 ?2861次閱讀
    <b class='flag-5'>MISRA</b> <b class='flag-5'>C</b>:2025新<b class='flag-5'>標準</b>解析:新增規則、優化點與靜態代碼分析工具支持(Perforce QAC、Klocwork)

    ad7616 burst模式讀取數據時,是否可以在下一個convst啟動轉換?

    ad7616 burst模式讀取數據時,是否可以在下一個convst啟動轉換,但busy還沒有拉低的情況下繼續讀取上次轉換的數據嗎?主要是串行讀取時,有可能出現convst臨界的情況,如果這樣可以的話,能夠提升小部分con
    發表于 04-15 07:50

    C++學到什么程度可以找工作?

    C++學到什么程度可以找工作?要使用C++找到工作,特別是作為軟件開發人員或相關職位,通常需要掌握以下幾個方面: 1. **語言基礎**:你需要C
    發表于 03-13 10:19