Diferencia entre las extensiones de archivo .cc y .cpp en C++
-
la extensión de archivo
.cpp
-
la extensión de archivo
.cc
-
Similitudes entre las extensiones de archivo
.cc
y.cpp
en C++ -
Diferencias entre las extensiones de archivo
.cc
y.cpp
en C++ - Conclusión
Si alguna vez ha trabajado con C++ en diferentes sistemas como Linux y Windows, debe haber encontrado las extensiones de archivo .cc
y .cpp
. En Internet, encontrará muchas fuentes que dicen que no hay diferencia entre estas extensiones de archivo y, de hecho, hay mucha confusión al respecto.
En este artículo, discutiremos los matices de estas extensiones de archivo C++ y cómo se diferencian entre sí. Pero antes de comenzar a comparar estas dos extensiones de archivo, primero recopilemos la información que tenemos sobre los conceptos básicos de estas dos extensiones de archivo.
la extensión de archivo .cpp
Un archivo con la extensión .cpp
es un archivo de código fuente C++. Estos archivos también se denominan archivos de implementación porque tienen definiciones para los métodos declarados en el archivo de encabezado.
Este archivo tiene como objetivo dividir la interfaz del proyecto C++ de la implementación. De esta forma, todas las declaraciones de las funciones miembro se realizan en el archivo de cabecera, y los detalles de las mismas se mantienen dentro del archivo .cpp
.
Podemos usar el archivo .cpp
como un archivo simple para escribir una aplicación C++ o como un archivo para la implementación de la clase. En el caso de la programación orientada a objetos, se utiliza el archivo .cpp
para la definición de la clase.
Para esto, todos los miembros de datos y funciones de la clase se declaran dentro del archivo de encabezado. Este archivo hace referencia al archivo de encabezado en una instrucción include
al principio del archivo.
Los archivos .cpp
son compatibles con el sistema operativo Windows; utilizando algunos programas externos, también funcionan con los sistemas operativos Linux y Mac.
la extensión de archivo .cc
Un archivo con la extensión .cc
es un archivo de código fuente C++. Esto puede contener un solo programa, así como funciones que se compilan en código de máquina.
Estos archivos son compatibles con los sistemas operativos Mac, Linux y Windows y son compatibles con varios programas en estos sistemas operativos.
Consulte esta documentación para obtener una lista completa de las extensiones de archivo.
Similitudes entre las extensiones de archivo .cc
y .cpp
en C++
Las extensiones de archivo .cc
y .cpp
no son las mismas, pero están relacionadas ya que ambas se usan como extensiones de archivo C++. Para un compilador, no hay diferencia entre los dos.
Los compiladores de C++ pueden abordar todas las extensiones de C++ automáticamente sin causar ningún problema. El compilador GNU GCC considera todas estas extensiones como archivos C++: .cc
, .c
, .c++
, .cp
, .cxx
, .cpp
, .CPP
, y siempre utiliza Compilación C++ para compilarlos sin que tengamos que invocarlo usando GCC.
Si bien .cpp
es la extensión de archivo recomendada de C++, es más una preferencia personal en cuanto a lo que decide usar. También puede depender de todo el equipo del proyecto y apenas crea ninguna diferencia.
Si el proyecto está relacionado con el código abierto, es una buena práctica usar lo que es común en la comunidad, que es .cpp
. Se trata de cómo estas dos extensiones de archivo están relacionadas de alguna manera.
Ahora sumerjámonos en la tan esperada discusión: la diferencia entre las extensiones de archivo .cc
y .cpp
.
Diferencias entre las extensiones de archivo .cc
y .cpp
en C++
Las diferencias entre las extensiones de archivo .cc
y .cpp
se pueden resumir en función de varios factores. Estos incluyen el entorno de trabajo, el sistema operativo, las convenciones antiguas y el origen de estas extensiones de archivo.
A continuación se muestran todos los puntos de diferencia entre estas dos extensiones de archivo:
-
Diferentes entornos admiten diferentes extensiones de archivo. La extensión de archivo
.cc
es compatible principalmente con Unix, GNU C++, Clang, Microsoft Visual C++ y Metrowerks CodeWarrior.Por otro lado, las extensiones de archivo
.cpp
son compatibles con GNU C++, Clang, Digital Mars, Borland C++, Watcom, Microsoft Visual C++ y Metrowerks CodeWarrior. Este tipo de distinción de compatibilidad ayuda al reconocimiento multiplataforma y hace que el código sea portátil. -
Los sistemas operativos también juegan un papel importante aquí. Para Unix y Linux, la convención es
.cc
, mientras que para Windows es.cpp
.Verá que la extensión de archivo
.cc
se usa más comúnmente en un sistema Linux/Unix, mientras que un archivo.cpp
se usa principalmente en Windows, ya que causa problemas con la extensión de archivo.C
. Para macOS, por otro lado, Xcode prefiere la extensión de archivo.cpp
. -
Hay algo en el origen de estos dos tipos de archivos que también crea la diferencia. Inicialmente,
.cpp
se adoptó como la convención para los archivos C++ porque significa C plus plus, y parece lógico que se use como una extensión de archivo C++.Dado que
cpp
ya existía en ese momento como C Preprocessor, había posibilidades de confundir el archivo.cpp
con el archivo.i
(la expansión de la llamadacpp
). Entonces, inicialmente, la extensión se cambió a.cc
.Con el tiempo, debido al acrónimo sinónimo, solo
.cpp
se hizo más popular. -
No hay duda de que Windows es, con diferencia, el sistema operativo más utilizado y popular en comparación con Linux y Unix. Debido a la popularidad de Windows sobre los sistemas Linux y Unix, la extensión de archivo
.cpp
se usa más comúnmente. -
Otro factor externo que puede crear una distinción entre estas dos extensiones de archivo es el uso del código base. Por ejemplo, Google usa la extensión de archivo
.cc
, mientras que LLVM libc++, por otro lado, usa la extensión de archivo.cpp
.
Conclusión
En este artículo, vimos cómo se usan las extensiones de archivo .cc
y .cpp
para archivos C++ en diferentes plataformas y sistemas operativos como Unix, Mac y Windows. También discutimos qué diferencia a estas dos extensiones de archivo y qué las relaciona entre sí.
Nuevamente, depende totalmente del desarrollador elegir cualquier extensión de archivo según sea necesario. Esto es todo por este artículo.