gpt4 book ai didi

c++ - 将 OOP 与结构代码混合

转载 作者:太空宇宙 更新时间:2023-11-04 07:28:36 26 4
gpt4 key购买 nike

我在不同的文件中有几个类。我想在 main() 函数中使用简单的 C 文件机制读取 - 只需从两个文件中读取两个整数,仅此而已。

现在,我应该创建一个单独的文件类并从那里处理它吗?

我应该在单独的 "file.cpp" 文件中创建标准函数吗?

我应该直接在main()中写这3-5行代码吗?

最佳答案

我认为您的意思是将 OOP 与过程编程混合在一起。如果是这样,很好。 C++ 旨在同时利用这两者。

如果你想写一个没有任何状态的函数,不要让它成为类的成员。只需编写一个名为 read_values_from_file 或任何您想要的免费函数。确定代码中的个人职责并将其分解为函数绝对是一种很好的做法。

将其放入哪个文件取决于您是否要重用它。如果您只打算在 main 的开头使用它,只需将它放在 main.cpp 中即可。不要仅仅为了它而给它自己的文件。否则,如果您想在多个翻译单元中使用相同的函数,将其声明放在头文件中并将其定义放在实现文件中可能会很有用。

无论你把它放在哪里,都不要让这个函数成为类的成员。这就是 Java 程序员所做的,因为他们别无选择。 C++ 相信您知道何时最适合创建类:何时拥有状态。

但是,我不认为您有充分的理由使用任何 C 库函数来读取文件。您没有理由不能编写使用 C++ 标准库的过程代码。只需使用文件流,例如 std::istream , 读取值。

关于c++ - 将 OOP 与结构代码混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15993697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com