Salto de interfaz AE

Comprender profundamente el significado del salto de interfaz de programación ESRI ArcGISEngine

   

1. Qué es el salto de interfaz (interfaz QI-Querry)

QI es un detalle técnico importante en el desarrollo de ArcGIS Eingine. Según la traducción literal de la interfaz de consulta, es la interfaz de consulta, pero su esencia se refiere a la transferencia de una interfaz de la clase a otra interfaz. Por lo tanto, también se llama salto de interfaz.

Al aprender programación orientada a objetos, se sabe que una clase puede contener muchos atributos y métodos, que deben agruparse y que cada equipo puede definir una interfaz. De esta manera, cada clase puede contener múltiples interfaces, por ejemplo, la clase Polygon contiene muchas interfaces como Ipolygon, Igeometry e Iarea. Cuando los desarrolladores desean conocer el perímetro de un polígono, deben usar la propiedad Longitud en la interfaz Ipolygon. Si desea conocer el área, debe usar la propiedad Área en la interfaz de Iarea. Es decir, en el proceso de usar Object, a menudo es necesario saltar entre diferentes interfaces, lo que se denomina salto de interfaz (QI).

2. Cómo QI

El siguiente es un ejemplo específico para ilustrar:

IPolygon pPolygon;

pPolygon = new PolygonClass ();

doble curva Longitud;

curveLength = pPolygon.Length;

IArea pArea;

pArea = pPolygon como IArea; // QI sucedió aquí

doble shapeArea;

shapeArea = pArea.Area;

3. La esencia de QI

IPolygon e Iarea son obviamente dos interfaces, por qué escribir en QI:

pArea = pPolygon como IArea;

La razón de la declaración anterior es legal, debe comprender las variables de interfaz a través de la declaración:

IPolygon pPolygon ;

Declara una variable de interfaz llamada pPolygon. La variable de interfaz es esencialmente una variable utilizada para almacenar una dirección de memoria, pero es diferente de la variable de dirección general, porque cuando se usan variables de interfaz, debe cumplir con las especificaciones de la interfaz.

Pase la declaración:

pPolygon = new PolygonClass ();

La variable de interfaz pPolygon almacena la primera dirección del objeto PolygonClass () en la memoria. Se puede entender que pPolygon apunta a un objeto Polygon. Y cuando se usa la variable pPolygon, debe cumplir con las especificaciones de la interfaz IPolygon. Por ejemplo, solo existe la propiedad Longitud sin la propiedad Área, y la propiedad Longitud es de solo lectura (la llamada interfaz es en realidad una especificación).

Declaración:

pArea = pPolygon como IArea ;

Es asignar la primera dirección de un Polígono a pArea, pero el uso de las variables de pArea debe cumplir con las especificaciones de la interfaz IArea.

Por lo tanto, el llamado QI es asignar la primera dirección de memoria de un objeto a diferentes variables de interfaz para acceder a diferentes atributos y métodos de acuerdo con diferentes especificaciones de interfaz.

 

Reimpreso de https://www.cnblogs.com/aipingniu/p/6014814.html, invadido y eliminado.
Publicado 8 artículos originales · ganó 16 · 40,000+ visitas

Supongo que te gusta

Origin blog.csdn.net/knkn123/article/details/88103794
Recomendado
Clasificación