Tecnología

Inicio

Función de llamada de objeto de C ++ Sintaxis

En C ++, un objeto función es un objeto de la clase que se puede utilizar como una función. Funciona de manera similar a otras funciones, excepto que utiliza el operador de llamada de función para pasar valores de la clase de objeto. Por ejemplo, un objeto de función puede tomar una serie de números, incluso si usted no sabe cuántos el usuario suministrará al escribir el código, y sumarlos para guardar el resultado en el objeto de clase.

Utilizar

Para utilizar un objeto función, primero definir y crear una clase de objeto, a continuación, crear una función llamada "operador" como uno de los miembros de funciones públicas. Si crea variables miembro privadas, puede establecer su valor en el constructor de la clase, a continuación, modificarlos con otros valores que pasa a través de la función de operador. C ++ tiene una ventaja sobre lenguaje de programación similar, como Java, debido a que estos otros idiomas no permiten la sobrecarga de operadores.

Sintaxis

Se crea la función de los objetos de manera similar a cualquier otro objeto en un programa en C ++. Se define una nueva clase, a continuación, crear variables miembro y funciones públicas y privadas, según sea necesario. Sin embargo, una de las funciones públicas que necesita para implementar es el operador de llamada de función, que le permite utilizar la clase de objeto en su programa como una función. En el cuerpo del programa, se crea la función de los objetos de la misma manera que cualquier otro objeto, escribiendo el nombre de la clase, a continuación, el nombre del objeto.

llamada a operadora

La función de operador de llamada es lo que hace que un objeto función diferente de otros objetos de clase. Sintácticamente, es necesario utilizar dos pares de corchetes para crear una función de operador. Por ejemplo, escribiendo "operador void () (int val1) {+ total = val1;};" le permite utilizar el objeto como una función para añadir valores a un total acumulado en una variable miembro de la clase. A continuación, puede utilizar esta variable total en otras funciones de la clase.

La sobrecarga

La sobrecarga del operador de función no cambia la forma de llamar a la función, que modifica la forma de pasar valores al objeto. Se permite pasar un número arbitrario de argumentos, lo que ayuda si usted no sabe cuántos necesita pasar en tiempo de ejecución. Por ejemplo, si tiene un constructor de la clase que tiene sólo dos parámetros y tienen un operador de llamada de función que toma tres, se puede utilizar un objeto función existente para inicializar una nueva, sino que pasan tres parámetros para que en lugar de dos. Esto sobrecarga el constructor y obliga al operador de la función para inicializar los valores.