Skip to main content

sqlitecpp-coding-standards

SQLiteCpp coding standards and API rules for core edits, public headers, style, and Doxygen.

来源信息

仓库
SRombauts/SQLiteCpp
最近来源活动
2026年10月1日 08:48
检测到的 SKILL.md 语言
英语
星标
2,789
分支
575

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
sqlitecpp-coding-standards
description
SQLiteCpp coding standards and API rules for core edits, public headers, style, and Doxygen.
# SQLiteCpp Coding Standards ## Non-negotiables - RAII only: acquire in constructors, release in destructors. - Never throw in destructors; use `SQLITECPP_ASSERT()` instead. - C++17 is the project minimum. Do not require C++20 without an explicit baseline change. - Public API headers must not include `sqlite3.h`. - Include the standard headers that declare the facilities a public header uses; do not rely on transitive includes. - Public API must use `SQLITECPP_API` from `SQLiteCppExport.h`. - One `Database`/`Statement`/`Column` per thread. ## Error handling - Throw `SQLite::Exception` for errors in throwing APIs. - Use `tryExec()`, `tryExecuteStep()`, `tryReset()` for error codes. ## Documentation and style - Doxygen required for public API (`@brief`, `@param`, `@return`, `@throw`). - ASCII only, 4 spaces, Allman braces, max 120 chars, LF line endings, final newline. - LF line endings are enforced repo-wide by `.gitattributes` (`* text=auto eol=lf`), matching `.editorconfig` (`end_of_line = lf`); never commit CRLF. Run `git add --renormalize .` if a file drifts. - Use `#pragma once` in headers. ## Naming conventions - Types: PascalCase (`Database`, `Statement`). - Functions/vars: camelCase (`executeStep()`, `getColumn()`). - Members: `m` prefix (`mDatabase`). - Args: `a` prefix (`aDatabase`). - Booleans: `b`/`mb` prefix (`bExists`, `mbDone`). - Pointers: `p`/`mp` prefix (`pValue`, `mpSQLite`).
在 GitHub 查看