代码之家  ›  专栏  ›  技术社区  ›  Saladin Akara

C++函数约定?

  •  0
  • Saladin Akara  · 技术社区  · 14 年前

    main() 函数位于程序顶部,函数/过程位于其下方,并使用前向声明来防止编译器错误。

    但是,我总是用另一种方法来做-函数在顶部 在底部,不要使用forward声明,我想我从来没有看到过它。

    哪个是对的?还是更多的是个人偏好?如能澄清,将不胜感激。

    8 回复  |  直到 14 年前
        1
  •  5
  •   MOnsDaR    14 年前

    可能存在这样的情况,即您的功能相互关联。如果你只是把它们写在 main()

    转发声明函数时,不会遇到此问题。

    主() 作为第一个函数,您将生成更可读的代码,但这可能只是个人偏好。
    它也可能更可读,因为另一个编码器有关于他将在文件中找到的函数的概述。

        2
  •  10
  •   GManNickG    14 年前

    main 在底部,因为当我有其他函数在那里的时候,它要么只是一个或两个其他的小函数,要么是一个代码片段。

    在实际的代码中,您可能希望将项目拆分(在一个文件中有多个“不相关”的函数是不好的),因此 主要的 很可能档案里只有一个人。你只是 #include 主要的 需要让事情顺利进行并利用它们。

        3
  •  3
  •   David Thornley    14 年前

    如果有一个标准的话,它将函数声明包含在一个.h文件中。这样,文件中函数的顺序无关紧要。我几乎从不在没有声明的情况下编写函数,当其他人这样做时,我会大吃一惊。

        4
  •  3
  •   azheglov    14 年前

    • 每类两个文件 h级) ,它只声明类的所有数据成员和函数;以及实现文件(名为 cpp级
    • 主函数(如果您的解决方案有它)进入一个名为的文件,例如。 全靠自己。

        5
  •  2
  •   Nim    14 年前

    这种方法很可能受到你教授的青睐,也很可能是她按照惯例教授的原因。这里有两种选择,随波逐流(即,不要试图破坏,可能会因为你的教授觉得你没有遵守“惯例”而被标记下来)或向她解释-只要代码的意图是明确的,就不需要这样做(或任何其他方式)!

        6
  •  0
  •   vitaut    14 年前

    对声明(函数原型)的建议更与C++相关,因为C++中没有隐式函数声明,所以必须在使用之前声明。因此,如果递归涉及多个函数,则肯定至少有一个不是定义的函数声明。

    对于一个小项目,使用任何你想要的风格,但要一致。 对于大型项目,您可能需要几个.cpp文件,并在头文件中定义接口(无论是类还是函数)。至少在单个文件中保持一致。

    最后一件事,我说过要始终如一吗?

        7
  •  0
  •   Puppy    14 年前

    我通常使用第二种形式,因为您必须维护函数声明——它们必须有正确的签名和名称,而且在您可以首先定义函数时,它们只是过度键入。不用维修,不用浪费时间。

        8
  •  0
  •   Rob K    14 年前