共用方式為


警告 C26481

請勿使用指標算術。 請改用 span (bounds.1)。

備註

這項檢查支援 C++ 核心指導方針 規則 I.13 不要將陣列當做單一指標 傳遞。 每當在算數運算中使用原始指標時,都應該以更安全的緩衝區類型取代,例如 span<T>vector<T>

這項檢查比 I.13 更嚴格:不會略過 zstringczstring 類型。

C26481 和 C26485 來自 界限保管庫ty 設定檔 規則。 這些規則是在 C++ 核心指導方針檢查程式的第一個版本中實作的。 它們適用于原始指標類別,因為它們有助於避免不安全使用原始指標。

範例

此範例會產生指標算術的警告。

// c26481_bad.cpp
// compile using:
// set Esp.Extensions=CppCoreCheck.dll
// cl /W3 /EHsc /permissive- /analyze /analyze:plugin EspXEngine.dll /analyze:ruleset "%VSINSTALLDIR%\Team Tools\Static Analysis Tools\Rule Sets\CppCoreCheckBoundsRules.ruleset" c26481_bad.cpp

int main() noexcept
{
    int * from_array = new int(10);
    int * later_array = from_array + 1;
    delete[](from_array);
}