Código c ++ en aplicaciones de macintosh de objective-c

Video: Compilare programmi C e C++ su Mac con terminale

Objetivo-C ofrece características orientadas a objetos para el desarrollo de aplicaciones Macintosh, como la herencia y polimorfismo. El lenguaje está basado en el lenguaje de programación C, por lo tanto, puede utilizar sus conocimientos de programación C para codificar dentro de Objective-C. Objective-C ++ es un mecanismo puente que permiten a los módulos de fuente de Objective-C para trabajar con clases de Objective-C ++, lo que podría compilación y enlace con las bibliotecas de código C ++.

Video: Como utilizar el Xcode para programar en C "jarroba.com"

El siguiente ejemplo simple de una matriz cuadrada muestra el contenido del archivo de cabecera un C ++ para una Matriz clase. La clase Matrix viene con el constructor y el destructor estándar para una clase de C ++ y los métodos son lo que se espera para un objeto matriz cuadrada básica:

Matriz de clase {public: Matriz (int inSize) -virtual ~ Matrix () - int getSize (void) -INT getDeterminant (void) -void setElement (int inrow, int INCOL, int inValue) -INT getElement (int inrow, int INCOL ) operador -Matrix + (Matrix const& inAddend) -private: int m_size-int [] [] m_elements -} -

Para utilizar Objective-C ++, su Objective-C ++ módulos de clase debe utilizar la extensión de archivo .mm. Esto le dice el compilador de Xcode que la clase debe ser compilado usando Objective-C ++, lo que le permitirá a su clase que se utiliza C ++ palabras clave del lenguaje. El uso de Objective-C ++, su aplicación podría crear un objeto Matrix para realizar operaciones básicas, tales como la adición de dos objetos Matrix juntos. Esto supone el módulo de fuente de Objective-C ++ tiene #importared el C ++ Matrix.h archivo:

Video: Tutorial de Objective C En Español

- (void) addTwoMatrices {Matrix MatrixOne (3) - // 3x3 matrixMatrix matrixTwo (3) - // anotherint rowIndex = 0-int colIndex = 0-de (rowIndex = 0- rowIndexlt; 3- ++ rowIndex) {for (colIndex = colIndexlt 0-; 3- ++ colIndex) {// set matriz de elementos de uno a su valuesmatrixOne.setElement (rowIndex, colIndex, XXX) - // establecer elementos de matriz de dos a algún otro valuesmatrixTwo.setElement (rowIndex, colIndex, YYY) -}} Matriz matrixSum = MatrixOne + matrixTwo-

Con Objective-C ++, las aplicaciones son capaces de tomar ventaja de todas las bibliotecas de terceros disponibles escritos para C ++.

Artículos Relacionados