<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 屬性(Attributes) “屬性”是C11標準中的新語法,用于讓程序員在代碼中提供額外信息。相較于風格各異的傳統方式(__attribute__, __declspec, #pragma等),“屬性”語法致力于將各種“方言”進行統一。 與傳統語法不同的是,“屬性”語法相當靈活,可以隨處添加,且總是作用于與之相鄰的語法實體。 ``` void f [[ noreturn ]] () // f() 永不返回 { throw "error"; // 雖然不得返回,但可以拋出異常 } struct foo* f [[carries_dependency]] (int i); // 編譯優化指示 int* g(int* x, int* y [[carries_dependency]]); ``` 正如你看到的那樣,屬性被放置在兩個雙重中括號“[[…]]”之間。目前,noreturn和carries_dependency是C++11標準中僅有的兩個通用屬性。 我們有理由擔心屬性的大量使用會引起C++語言的混亂,很可能將產生很多C++語言的“方言”。 所以,我們推薦僅在不影響源代碼的業務邏輯的前提下,才使用屬性來幫助編譯器作更好的錯誤檢查(例如,[[noreturn]],或者是幫助代碼優化(例如, [[carries_dependency]])。 在未來的計劃中,屬性的一個重要用途是為OpenMP提供更好的輔助信息。例如: ``` // 使用[[omp::parallel()]]屬性告訴編譯器,這個for循環可以并行執行 for [[omp::parallel()]] (int i=0; i<v.size(); ++i) { // ... ``` 就像上面的代碼展示的那樣,通過指定for循環的[[omp::parallel()]]屬性,編譯器將使用OpenMP對這個for循環進行并行化處理,從而這個for循環將并行執行。 參考文獻: Standard: 7.6.1 Attribute syntax and semantics, 7.6.3-4 noreturn, carries_dependency 8 Declarators, 9 Classes, 10 Derived classes, 12.3.2 Conversion functions [N2418=07-027] Jens Maurer, Michael Wong: Towards support for attributes in C++ (Revision 3)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看