Cosa posso fare quando l'intervistatore non conosce la risposta alla sua domanda? [chiuso]

48

Ieri ho avuto un'esperienza terribile in un'intervista.

L'intervistatore mi ha chiesto della pura funzione virtuale. Ho detto che potrebbe avere o meno una definizione nella classe base, ma le classi derivate dovrebbero fornire una definizione a meno che non vogliano anche essere una classe astratta.

Ma l'intervistatore continuava a chiedere "Può avere una definizione virtuale !!! ???" ... Ho detto di sì.

Di nuovo ha detto "Pure?"

Ho detto di sì. È consentito, le classi derivate possono chiamare esplicitamente tale funzione se desiderano quel particolare comportamento.

Mi ha mandato fuori. Sono sicuro che non conosce il fatto che la pura funzione virtuale possa avere una definizione.

Come affrontare questo tipo di intervistatori?

Dopo aver chiesto la seconda volta, dovrei mentire sul fatto che non può avere una definizione? :)

O dovrei attenermi alle mie parole e perdere l'opportunità di lavoro?

    
posta bjskishore123 09.01.2011 - 08:07
fonte

11 risposte

82

No. E dovresti ringraziare le tue stelle fortunate che ti sei perso da quel particolare proiettile. Lavorare per persone che rifiutano di ammettere che potrebbero non sapere tutto e rifiutarsi di imparare dagli altri, è un'esperienza MOLTO spiacevole.

    
risposta data 09.01.2011 - 08:10
fonte
48

Esempio di una pura funzione virtuale con una definizione:

// object.hpp
struct object
{
    // virtual destructor, to allow use as a public base class,
    // but pure to ensure object itself isn't instantiated
    virtual ~object() = 0; 
};

inline object::~object()
{
    // empty implementation
}
    
risposta data 09.01.2011 - 08:13
fonte
42

Il problema in questione non è la correttezza tecnica, ma le abilità sociali / comunicative. Rimanere saldi, ma riconoscere il punto di vista dell'intervistatore e consentire loro di salvare la faccia.

Una volta che puoi vedere che cosa stava pescando ("puro?" è un buon indizio), una buona risposta potrebbe essere:

It is commonly thought that pure virtual functions cannot have a definition. However, technically speaking, a for the virtual function to be pure, it must have =0 in the declaration. It can still have a definition (try it, it will compile!). Of course, this is rarely used, and in practice when most people say "pure virtual" they imply the definition is absent.

    
risposta data 09.01.2011 - 09:24
fonte
10

Potresti aver spiegato come dichiarare una pura funzione virtuale che ha un'implementazione.

In effetti, vorrei che tu venissi qui perché non ho familiarità con come farlo neanche.

    
risposta data 09.01.2011 - 08:09
fonte
6

Molte volte quando intervisto un candidato, sto cercando di vedere come la persona gestisce l'incertezza o si occupa dello scontro. La prossima volta che intervisti, sii sensibile a questo e cerca di rispondere in modo costruttivo alla domanda o di spiegare la tua posizione. Questo potrebbe essere più importante della risposta corretta.

    
risposta data 09.01.2011 - 18:17
fonte
5

Sono stato in interviste in cui sapevo più del mio intervistatore. Tuttavia, volevano che qualcuno svolgesse un ruolo e non avesse nessuno (ovviamente) che potesse intervistare a quel livello.

Nel tuo caso, ritieni che sia stata cieca ignoranza o vero malinteso? Forse una email di follow-up con esempi e riferimenti: vedi come reagiscono prima di decidere.

Tendo alla "cieca ignoranza" anche se basata sulla tua domanda e rimarrò ben chiara ...

    
risposta data 09.01.2011 - 11:28
fonte
3

In una situazione come questa, proporrei di scrivere una semplice classe con una funzione virtuale con un corpo e vedere se compila. Per lo meno, vorrei proporre a google l'argomento.

Se l'intervistatore accetta la sfida, ammette la sconfitta, e non sembra che stia per strangolarti dopo, allora dovresti essere in buona forma. Altrimenti, probabilmente non è la persona con cui tu vuoi lavorare.

    
risposta data 10.01.2011 - 00:30
fonte
3

Sono totalmente in disaccordo con l'idea che dovresti rinunciare a una società perché il ragazzo che ti ha intervistato non conosce la risposta alla sua domanda. Anche quando lavori, incontrerai persone ostinate anche se sbagliate. È una buona abilità per manovrare le persone alla risposta giusta.

Nel mio caso, l'intervistatore ha chiesto come calcolare la varianza di molti numeri su molte macchine. Ho iniziato dicendo che la varianza è la media dei quadrati meno il quadrato dei mezzi. Si è interposto, "no, è E[(x - mu)²] ."

Ho detto: "Sì, hai ragione, ma la tua formula è uguale alla mia. Facciamola insieme". E poi l'abbiamo derivato insieme.

Nella tua situazione quando riconosci che l'intervistatore è incredulo, devi cambiare approccio. Digli che si tratta di una caratteristica raramente conosciuta (questo ti fa sembrare meno noto a tutti) e se lo vorrai gli invierò un programma di esempio o un riferimento a un libro in C ++ dopo l'intervista (questo è in modo che l'intervista possa muoversi con garbo in avanti.)

Prova ad immaginare le cose dal suo punto di vista. Stai per intervistare persone un giorno e a volte ti sbagli. Come vorresti che un candidato brillante rispondesse a una domanda del genere?

    
risposta data 10.01.2011 - 00:09
fonte
2

Penso che avresti dovuto spostare l'intervista dalla scrivania a un computer con un compilatore. Questo avrebbe risolto il problema.

    
risposta data 09.01.2011 - 12:56
fonte
1

EDIT: apparentemente ho torto, vedi i commenti sotto questa risposta. Lasciando qui la risposta a scopo didattico.

Purtroppo, ti sbagli. Una funzione virtuale può avere una definizione; una funzione pura non può. La mancanza di definizione è ciò che lo rende puro.

    
risposta data 09.01.2011 - 08:10
fonte
1

Sai che qualunque cosa tu abbia risposto è giusta. Secondo me hai fatto un buon lavoro attenendosi alla tua risposta dato che avevi ragione. Non c'è bisogno di mentire perché se non oggi un altro intervistatore di tempo imparerà a conoscere le funzioni virtuali pure !!!! ... Potrebbe testare anche voi per verificare quanto siete fermi nelle vostre decisioni? Sei la persona che viene portata via facilmente? Non c'è bisogno di perdere la speranza, dal momento che sai esattamente come

    
risposta data 09.01.2011 - 08:13
fonte

Leggi altre domande sui tag