Sincronizzato valore compreso tra C # e C ++?
Domanda
C'è una funzione che esiste sia in C # e (non gestito) C ++, che restituisce un numero sincronizzato (come float o int)?
Per esempio c'è qualcosa che porta l'ora esatta di sistema per almeno il secondo, che sarebbe tornato lo stesso risultato esatto sia C ++ e C # è chiamato nello stesso momento?
Basta chiedersi davvero =)
Soluzione
Stai parlando gestita C ++ (C ++ / CLI) o C ++ nativo qui? Se si utilizza il codice gestito in tutto, quindi la soluzione più ovvia è quella di utilizzare il Environment.TickCount
proprietà. In C ++ nativo, l'equivalente è Win32 GetTickCount
di funzione.
Altri suggerimenti
La cosa migliore per un totale senso di controllo potrebbe essere quella di utilizzare P / Invoke per chiamare una funzione Win32 come GetSystemTime o GetTickCount direttamente da C #.
Ma sotto tutto questo DateTime è solo chiamando funzioni Win32, quindi non c'è alcun motivo per cui sta andando a darvi una significativamente differente in tempo reale di quanto si otterrà utilizzando ordinaria C-style chiamate Win32.
C ++ gestito e C #, molto probabilmente. Non gestito C ++, probabilmente no, in quanto non viene compilato a IL.