1

In c++, is there any other way, besides header files, to use a function defined in file A.cpp, inside file B.cpp that would be considered good programming practice?

user2738698
  • 957
  • 1
  • 9
  • 20

2 Answers2

6

With your restriction of "besides header files", the answer is: No.

The C++ compiler compiles each source file independently. If you intend to use a declaration that appears only once, it must appear in a header file.

(This does not consider things that wouldn't be considered good programming practice, such as including one .cpp file within another, or using -D compiler command line macros to define extern symbols in more than one source file.)

Greg Hewgill
  • 10,231
4

Lazy C++ can automate the generation of .h and .cpp files from a common .cpp-like source, so you don't have to repeat yourself by maintaining the header file yourself.

Josh Kelley
  • 11,051
  • 7
  • 39
  • 50