From 43a371383892aab8f832b9f6886f62dbfbf33bef Mon Sep 17 00:00:00 2001 From: guoyibin Date: Sat, 19 Apr 2025 18:03:29 +0800 Subject: [PATCH 1/2] Update G.FUD.01.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 加入 较少参数,存在性能收益可能性 的解释 原因如下 1,rust编译的 硬件指令对于较少函数参数会优先使用寄存器(大部分如此) 2,ffi 类型的函数,有明确规范定义 --- src/safe-guides/coding_practice/fn-design/G.FUD.01.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/safe-guides/coding_practice/fn-design/G.FUD.01.md b/src/safe-guides/coding_practice/fn-design/G.FUD.01.md index ecb84756..dffab42b 100644 --- a/src/safe-guides/coding_practice/fn-design/G.FUD.01.md +++ b/src/safe-guides/coding_practice/fn-design/G.FUD.01.md @@ -4,7 +4,8 @@ **【描述】** -为了提升代码可读性,函数的参数最长不宜超过五个。 +为了提升代码可读性,函数的参数最长不宜超过五个。根据编译器函数调用规范,较少的参数个数编译器优先使用寄存器,所以 +存在性能收益的可能性。 **【反例】** From c88384535f6cae73880be2056f5fb17ca147de96 Mon Sep 17 00:00:00 2001 From: guoyibin Date: Sat, 19 Apr 2025 18:15:22 +0800 Subject: [PATCH 2/2] Update G.FUD.01.md fix url MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充调用规范 --- src/safe-guides/coding_practice/fn-design/G.FUD.01.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/safe-guides/coding_practice/fn-design/G.FUD.01.md b/src/safe-guides/coding_practice/fn-design/G.FUD.01.md index dffab42b..216690ff 100644 --- a/src/safe-guides/coding_practice/fn-design/G.FUD.01.md +++ b/src/safe-guides/coding_practice/fn-design/G.FUD.01.md @@ -4,7 +4,7 @@ **【描述】** -为了提升代码可读性,函数的参数最长不宜超过五个。根据编译器函数调用规范,较少的参数个数编译器优先使用寄存器,所以 +为了提升代码可读性,函数的参数最长不宜超过五个。根据编译器函数调用规范[[1](https://www.cnblogs.com/shines77/p/3788514.html)][[2](https://learn.microsoft.com/zh-cn/cpp/build/x64-calling-convention?view=msvc-170)],较少的参数个数编译器优先使用寄存器,所以 存在性能收益的可能性。 **【反例】**