Qual è l'organizzazione di progetto ideale per le interfacce in una soluzione C ++ / CLI?

-1

Abbiamo una soluzione legacy C ++ / CLI che genera un eseguibile principale, ma è stata ampliata per generare librerie e includere test unitari rilevanti. Poiché abbiamo un numero di classi sia nella libreria che nell'eseguibile che implementano un'interfaccia comune, qual è il modo corretto di organizzare la soluzione per esso?

In questo momento abbiamo le cose in modo approssimativo come segue:

\Solution
   \Library
      \Interfaces
         myInterface.h
   \Application
      \Widgets
         myWidget.h
         myWidget.cpp

Dove viene attivata l'interfaccia come segue:

#include "..\Library\myInterface.h"
    
posta rjzii 29.12.2016 - 16:37
fonte

1 risposta

4

Puoi mettere i file header della tua libreria dove vuoi, basta aggiungere la cartella alla cartella "additional include files" del tuo progetto. Questo evita la necessità di includere come

  #include "..\Library\myInterface.h"

Invece, puoi usare

  #include <myInterface.h>

Questo ha non solo il vantaggio di essere più breve, ma ti permetterà di cambiare più facilmente la struttura delle cartelle in un secondo momento se diventa necessario. In questo modo, ci sarà un singolo punto - il file di progetto "vcxproj" - in cui è memorizzata la posizione della libreria (relativa alla posizione dell'applicazione).

    
risposta data 29.12.2016 - 17:14
fonte

Leggi altre domande sui tag