|
|
|
|
266
|
|
266
|
|
267
|
3. Abre el archivo `main.cpp` (en Sources). Estudia la función `illustration` y su invocación desde la función `main`. Nota que las variables `argValue` y `argRef` están inicializadas a 0 y que la invocación a `illustration` hace un pase por valor de `argValue` y un pase por referencia de `argRef`. Nota también que a los parámetros correspondientes en `illustration` se les asigna el valor 1.
|
267
|
3. Abre el archivo `main.cpp` (en Sources). Estudia la función `illustration` y su invocación desde la función `main`. Nota que las variables `argValue` y `argRef` están inicializadas a 0 y que la invocación a `illustration` hace un pase por valor de `argValue` y un pase por referencia de `argRef`. Nota también que a los parámetros correspondientes en `illustration` se les asigna el valor 1.
|
268
|
|
268
|
|
269
|
- void illustration(int paramValue, int ¶mRef) {
|
|
|
270
|
- paramValue = 1;
|
|
|
271
|
- paramRef = 1;
|
|
|
272
|
- cout << endl << "The content of paramValue is: " << paramValue << endl
|
|
|
273
|
- << "The content of paramRef is: " << paramRef << endl;
|
|
|
274
|
- }
|
|
|
|
|
269
|
+ void illustration(int paramValue, int ¶mRef) {
|
|
|
270
|
+ paramValue = 1;
|
|
|
271
|
+ paramRef = 1;
|
|
|
272
|
+ cout << endl << "The content of paramValue is: " << paramValue << endl
|
|
|
273
|
+ << "The content of paramRef is: " << paramRef << endl;
|
|
|
274
|
+ }
|
275
|
|
275
|
|
276
|
4. Ejecuta el programa y observa lo que se despliega en la ventana `Application Output`. Nota la diferencia entre el contenido las variables `argValue` y `argRef` a pesar de que ambas tenían el mismo valor inicial y que a `paramValue` y `paramRef` se les asignó el mismo valor. Explica por qué el contenido de `argValue` no cambia, mientras que el contenido de `argRef` cambia de 0 a 1.
|
276
|
4. Ejecuta el programa y observa lo que se despliega en la ventana `Application Output`. Nota la diferencia entre el contenido las variables `argValue` y `argRef` a pesar de que ambas tenían el mismo valor inicial y que a `paramValue` y `paramRef` se les asignó el mismo valor. Explica por qué el contenido de `argValue` no cambia, mientras que el contenido de `argRef` cambia de 0 a 1.
|
277
|
|
277
|
|
|
|
|
|
282
|
|
282
|
|
283
|
1. Estudia el código de la función `main()` del archivo `main.cpp`. La línea `XYPlotWindow wCircleR5;` crea el objeto `wCircleR5` que será la ventana en donde se dibujará una gráfica, en este caso la gráfica de un círculo de radio 5. De manera similar se crean los objetos `wCircle` y `wButterfly`. Observa el ciclo `for`. En este ciclo se genera una serie de valores para el ángulo $$t$$ y se invoca la función `circle`, pasándole el valor de $$t$$ y las referencias a $$x$$ y $$y$$. La función `circle` no devuelve valor pero, usando parámetros por referencia, calcula valores para las coordenadas $$xCoord$$ y $$yCoord$$ del círculo con centro en el origen y radio 5. Además, permite que la función `main` tenga esos valores en las variables `x` , `y`.
|
283
|
1. Estudia el código de la función `main()` del archivo `main.cpp`. La línea `XYPlotWindow wCircleR5;` crea el objeto `wCircleR5` que será la ventana en donde se dibujará una gráfica, en este caso la gráfica de un círculo de radio 5. De manera similar se crean los objetos `wCircle` y `wButterfly`. Observa el ciclo `for`. En este ciclo se genera una serie de valores para el ángulo $$t$$ y se invoca la función `circle`, pasándole el valor de $$t$$ y las referencias a $$x$$ y $$y$$. La función `circle` no devuelve valor pero, usando parámetros por referencia, calcula valores para las coordenadas $$xCoord$$ y $$yCoord$$ del círculo con centro en el origen y radio 5. Además, permite que la función `main` tenga esos valores en las variables `x` , `y`.
|
284
|
|
284
|
|
285
|
- ```cpp
|
|
|
286
|
XYPlotWindow wCircleR5;
|
285
|
XYPlotWindow wCircleR5;
|
287
|
XYPlotWindow wCircle;
|
286
|
XYPlotWindow wCircle;
|
288
|
XYPlotWindow wButterfly;
|
287
|
XYPlotWindow wButterfly;
|
|
|
|
|
309
|
// añade el punto (x,y) a la gráfica del círculo
|
308
|
// añade el punto (x,y) a la gráfica del círculo
|
310
|
wCircleR5.AddPointToGraph(x,y);
|
309
|
wCircleR5.AddPointToGraph(x,y);
|
311
|
}
|
310
|
}
|
312
|
- ```
|
|
|
313
|
|
311
|
|
314
|
Luego de la invocación, cada par ordenado $$(x,y)$$ es añadido a la gráfica del círculo por el método `AddPointToGraph(x,y)`. Luego del ciclo se invoca el método `Plot()`, que "dibuja" los puntos, y el método `show()`, que muestra la gráfica. Los *métodos* son funciones que nos permiten trabajar con los datos de los objetos. Nota que cada uno de los métodos se escribe luego de `wCircleR5`, seguido de un punto. En una experiencia de laboratorio posterior, aprenderás más sobre objetos y practicarás cómo crearlos e invocar sus métodos.
|
312
|
Luego de la invocación, cada par ordenado $$(x,y)$$ es añadido a la gráfica del círculo por el método `AddPointToGraph(x,y)`. Luego del ciclo se invoca el método `Plot()`, que "dibuja" los puntos, y el método `show()`, que muestra la gráfica. Los *métodos* son funciones que nos permiten trabajar con los datos de los objetos. Nota que cada uno de los métodos se escribe luego de `wCircleR5`, seguido de un punto. En una experiencia de laboratorio posterior, aprenderás más sobre objetos y practicarás cómo crearlos e invocar sus métodos.
|
315
|
|
313
|
|