GCC v Linuxu, Podivná inicializace konstruktoru
class ChunkMaster
{
typedef std::set<Chunk *> ChunkSet;
typedef std::set<Chunk *> FreeChunkSet;
typedef ChunkSet::iterator ChunkSetIter;
typedef FreeChunkSet::iterator FreeChunkSetIter;
ChunkSet _chunks;
Chunk *_lastAlloc;
Chunk *_wholeEmpty;
Chunk *_lastFree;
FreeChunkSet _freeChunks;
unsigned char _maxSlots;
public:
ChunkMaster(int maxSlots):_lastAlloc(0),_wholeEmpty(0),_lastFree(0),_maxSlots(maxSlots) {}
Je zajímavé, že když přehodím inicializace _lastFree a _maxSlots, obdržím od GCC warning, že to není vhodné. Co si mám o tom myslet? Znamená to, že je to jen "falešný poplach" a překladač i nadále dodrží normu, nebo to znamená, že nutím GCC normu porušit a předepsat mu jiné pořadí inicializace?
|