Introducción
Al programar en C y C ++, generalmente divide los prototipos de funciones y las funciones reales en un archivo .h
/ .hpp
y .c
/ .cpp
. Lamentablemente, es muy tedioso transferir los prototipos de funciones de un archivo a otro, y requiere abrir ambos archivos al mismo tiempo (o una buena memoria), así como una gran cantidad de tipeo innecesario, especialmente cuando se realizan cambios en los argumentos o nombres de miembros hecho.
Ejemplo
foo.hpp
:
int someFunction(int someArgument);
class someClass
{
public:
someClass();
~someClass();
int anotherFunction(int anotherArgument);
};
foo.cpp
:
#include "foo.hpp"
int someFunction(int someArgument)
{
// Code goes here
}
someClass::someClass()
{
// Code goes here
}
someClass::~someClass()
{
// Code goes here
}
int someClass::anotherFunction(int anotherArgument)
{
// Code goes here
}
Pregunta
¿Hay alguna manera de crear y actualizar automáticamente las funciones al foo.cpp
usar las definiciones y prototipos foo.hpp
?
fuente
inline
? ¿Hay argumentos por defecto? ¿Deben elidirse los nombres de argumento?El
:GOTOIMPL
comando de lh-cpp puede saltar a una definición de función desde su declaración, o proporcionar una definición vacía predeterminada en caso de que no se encuentre ninguna.Algunas características que se me ocurren:
virtual
,static
, ...).ns::
si estamos dentronamespace ns{
o dentro de unusing namespace ns;
contexto.Sin embargo:
fuente