- 主题:一个函数有十好几个参数时,咋处理为好呢?
经常看到有人写的一个函数有十几个参数,感觉有点bad smell
如果把有相关性的几个参数放入到一个struct中,然后传递const struct &,不知道会不会影响编译器优化。
--
FROM 114.241.227.*
很多年前学的第一门高级语言就是fortran。不能比烂啊,还是要有点B格的追求吧,哈哈
【 在 DoorWay 的大作中提到: 】
: 读一点Fortran代码,导师手里祖传那种,物理或者生物,
: 据说几十个参数,开头再声明十来个来个单字母产量,
: 回头再看这种函数,就感觉好很多。
: ...................
--
FROM 114.241.227.*
首先是smell的问题,其次才是优化之类的考虑
而且既然提出这个问题,说明早就过了通宵赶工发版的阶段,不然谁写100个参数的函数,我也会当作没看见,顶多捏着鼻子看。
【 在 hgoldfish 的大作中提到: 】
: 写代码优先好看。因为程序员看代码的时间比写代码的时间多。再烂的程序员打字速度也能达到 50 w/s. 等你确定热点再哪里再去优化。
: 你连传参数的效率都考虑,应该去写汇编。
:
--
修改:z16166 FROM 114.241.227.*
FROM 114.241.227.*
已经过了读懂的那个阶段了
20个参数,现在到了写得好的阶段了
【 在 tortelee 的大作中提到: 】
: 赞同,首先人能读懂
: :
--
FROM 114.241.225.*
研究一下这几个宏,和__cdecl calling convention
https://learn.microsoft.com/en-us/cpp/c-runtime-library/reference/va-arg-va-copy-va-end-va-start?view=msvc-170
【 在 gaohairong 的大作中提到: 】
: printf函数里面参数随意,怎么做到的?
:
--
FROM 222.131.205.*
chatgpt说得很对,还很全
【 在 zdjnju 的大作中提到: 】
: 看看ChatGPT的回答
--
修改:z16166 FROM 222.131.205.*
FROM 222.131.205.*