Mi enfoque. El núcleo es el motor. - página 11

 
Vasiliy Sokolov:

Bien, digamos que tiene un número bajo el nombre (salvaje, por supuesto, pero digamos que lo es). Pero cada botón tiene una leyenda, un texto, por ejemplo "Cancelar" o algo así. ¿Cómo se especifica esta propiedad? Sí:

Iba a investigar más sobre esto.

Muy sencillo. Hacemos una serie de

string Button_names[] = {"Cancel", "Ok", "Hello World!"...};

Hacemos un bucle en el núcleo principal y ordenamos los índices de las celdas de texto en él.

 
Реter Konow:

Esto significa que el tamaño del núcleo debe coincidir con el número de propiedades del objeto. Si cambias el número de propiedades y no cambias el tamaño del núcleo, te quedarás sin la matriz.

Por lo tanto, mientras se escribe el código, se debe controlar que el número de propiedades y el tamaño del núcleo coincidan en todas partes.

...

Eres un verdadero monstruo :) Tú creas tus propios problemas y los resuelves. :)

Si abandonaras esta "herejía" y abrazaras la "religión" OOP. :) Entonces habrías encontrado la forma de hacer todo mucho más sencillo, flexible y ampliable.

 
Vitalii Ananev:

Es decir, mientras escribes tu código, debes comprobar constantemente que el número de propiedades y el tamaño del núcleo son iguales en todas partes.


¿Cuál es el problema de controlar? Añadimos una propiedad y aumentamos el tamaño de las filas del núcleo. Eso es todo.

 

Y por cierto, ni siquiera este código te compilará. Aquí estás creando un array bidimensional de 3x10:

int P_CORE[3][10] = {
//Основание кнопки.-----------------------------
//
//1)NAME   2)TYPE  3)ELEMENT    4)X    5)Y     6)X_SIZE  7)Y_SIZE       8)COLOR
//----------------------------------------------
{ 100001,  base,  button,    100, 100,    200,    50,    C'245,245,245'}, 
//---------------------------------------------- 
//Текст кнопки.---------------------------------
//
//NAME    TYPE   ELEMENT   X    Y     X_SIZE  Y_SIZE       COLOR 
//----------------------------------------------
{100002,  text,  button,  120, 120,     0,      0,       C'245,0,0'},
//---------------------------------------------- 
//Иконка кнопки.-------------------------------- 
//
//NAME    TYPE     ELEMENT   X    Y     X_SIZE  Y_SIZE       COLOR 
{100003,  icon,    button,  140, 140,     16,     16,           0},

Aunque sólo tiene ocho propiedades que definir.

Luego se vuelve a hacer una búsqueda de 10 propiedades:

#define  All_objects     30
#define  All_properties  10
//Далее, строим G_CORE:
//--------------------------------------
int q = 0;
//--------------
for(int a1 = 0; a1 < All_objects; a1++)
  {
   for(int a2 = 0; a2 < All_properties; a2++)
    {
     G_CORE[a1][a2] = P_CORE[q][a2];
    }
     q++;
     if(q == 3)q = 0;    
  }

¿Qué significa eso?

 
Vasiliy Sokolov:

Y por cierto, ni siquiera este código te compilará. Aquí estás creando un array bidimensional de 3x10:

Aunque sólo tiene ocho propiedades que definir.

Luego se vuelve a hacer una búsqueda de 10 propiedades:

¿Qué significa eso?

Esto es sólo un ejemplo. No para la compilación.

 
Реter Konow:

Esto es sólo un ejemplo. No para la compilación.

¿Ah, sí? Así que intentas explicarnos tu código con un ejemplo que no funciona.

 
Vasiliy Sokolov:

Oh, vaya. Así que estás tratando de explicarnos tu código, usando ejemplos que realmente no funcionan.

No estoy explicando el código, estoy explicando el enfoque.

 
Реter Konow:

El núcleo no, el motor. El núcleo es simplemente una matriz de datos.

Se comunica a través de EventChartCustom();

Sí, lo siento. Me confundo todo el tiempo. El núcleo y el sonido del motor son equivalentes. La terminología es desafortunada en mi opinión.
Pedro, por favor, dibuja en cualquier editor gráfico, al menos algún diagrama de bloques con el kernel, el motor, el cuerpo del programa y flechas entre ellos, indicando las formas de interacción (dónde a través de las variables globales del terminal, dónde a través de los ficheros, dónde a través de las interrupciones del usuario, dónde a través de los recursos, dónde a través del buffer indicador, etc.). Es que soy visualista (creo que no soy el único), no audialista, y en esta jungla de palabras me pierdo y mis puzles no encajan.
 
Para los que estén realmente interesados, continuaré más tarde. Por ahora, es un descanso.
 
Nikolai Semko:
Sí, lo siento. Sigo confundido. El núcleo y el motor suenan igual. La terminología es desafortunada en mi opinión.
Peter, por favor, dibuja en cualquier editor gráfico al menos algún diagrama de bloques con el kernel, el motor, el cuerpo del programa y flechas entre ellos con indicación de los métodos de interacción (dónde a través de las variables globales del terminal, dónde a través de los archivos, dónde a través de las interrupciones del usuario, dónde a través de los recursos, dónde a través del buffer indicador, etc.). Es que soy más visual (creo que no soy el único) que auditivo, y en esta jungla de palabras me pierdo y mis puzles no cuadran.

El núcleo es un array. El motor es el código.

Lo dibujaré.