l'équivalent de template et friend de C/C++ en Ada? - Ada - Programmation
Marsh Posté le 17-11-2004 à 20:21:11
Les Templates de C++, ça s'appelle les generics en Ada : http://www.adahome.com/rm95/rm9x-12.html
Par contre, les templates et les friends de C, j'avoue nas pas trop connaître.
Marsh Posté le 17-11-2004 à 20:32:07
Lam's a écrit : |
On peut faire des trucs très rigolos avec sed
Marsh Posté le 17-11-2004 à 20:38:44
lol , ouais c'est plutot en C++ et pas en C...
Merci Lam's, et pour friend t'as une idee stp?
a+
Marsh Posté le 17-11-2004 à 20:39:54
meetic ?
Bon, c'est quoi ta fonction friend ? D'habitude, les friend on s'en sert pour les opérateurs, ou on ne s'en sert pas.
En plus, si tu définis ton truc en limited private, et en donnant ta fonction dans le package-spec, tu dois pouvoir l'implémenter ailleurs, donnant donc l'équivalent d'un friend, non ?
Marsh Posté le 17-11-2004 à 21:38:11
ahh!, lol pas tt clair mais je commence à comprendre qlq trucs quand meme , merci beaucoup chef Lam's, je vois que tu maitrise bien ada.
c'est la classe en c++ que j'essaie la traduire :
// Generation.h: interface for the Generation class.
//
#ifndef _HEAPMEMORY_H
#define _HEAPMEMORY_H
#include "StdAfx.h"
class Generation
{
friend class GC;
private:
// The generation number
int _GenerationNumber;
// Pointers to the objects in the generation
std::vector< void* > _Pointers;
// Points to the top of memory available in the generation
void* _pTopOfMemory;
// The generation allocates memory from this location
void* _pNextObjPtr;
// Returns maximum size available for one generation
enum { MaxSize = 1000 };
// Table of memory inside generation
BYTE MemoryTable[MaxSize];
public:
// Gets the remaining memory of the Generation
int GetRemainingMemory() const;
// Returns maximum memory that can be allocated for one generation
int GetTotalMemory() const { return MaxSize; }
// Allocates memory for an object and returns its void*
void* Allocate( size_t Size );
// Gets the generation number
int GetGenerationNumber() const { return _GenerationNumber; }
// Performs bitbybit copying
static void* CopyBitByBit( const void* pSourceLocation, size_t Size, Generation* pTargetGeneration );
void operator delete( void* v )
{
free( v );
}
public:
Generation( int GenNumber = 0 );
virtual ~Generation();
};
#endif
/////////
normalement je dois faire un package generation.ads pour ce but.
mais je sais pas comment faire la structure de ce package
tu peux m'aider stp?
merci beaucoup d'avance.
a+
Marsh Posté le 17-11-2004 à 20:10:22
Salut tt monde ,
Jaime savoir s'il y a des équivalentes pour template et friend (de C/C++) en Ada. Car j'essaie de traduire une classe de c++ en Ada.
Merci d'avance.
---------------
Merci pour votre aide