首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++中結構體定義時冒號?该怎么处理

2012-04-03 
c++中結構體定義時冒號?struct SkBitmap::MipMap : SkNoncopyable {int32_t fRefCntintfLevelCount//Mip

c++中結構體定義時冒號?
struct SkBitmap::MipMap : SkNoncopyable {
  int32_t fRefCnt;
  int fLevelCount;
// MipLevel fLevel[fLevelCount];
// Pixels[]

  static MipMap* Alloc(int levelCount, size_t pixelSize) {
  if (levelCount < 0) {
  return NULL;
  }
  Sk64 size;
  size.setMul(levelCount + 1, sizeof(MipLevel));
  size.add(sizeof(MipMap));
  size.add(pixelSize);
  if (!isPos32Bits(size)) {
  return NULL;
  }
  MipMap* mm = (MipMap*)sk_malloc_throw(size.get32());
  mm->fRefCnt = 1;
  mm->fLevelCount = levelCount;
  return mm;
  }

  const MipLevel* levels() const { return (const MipLevel*)(this + 1); }
  MipLevel* levels() { return (MipLevel*)(this + 1); }

  const void* pixels() const { return levels() + fLevelCount; }
  void* pixels() { return levels() + fLevelCount; }

  void ref() {
  if (SK_MaxS32 == sk_atomic_inc(&fRefCnt)) {
  sk_throw();
  }
  }
  void unref() {
  SkASSERT(fRefCnt > 0);
  if (sk_atomic_dec(&fRefCnt) == 1) {
  sk_free(this);
  }
  }
};

這個SkNoncopyable定義

class SK_API SkNoncopyable {
public:
  SkNoncopyable() {}

private:
  SkNoncopyable(const SkNoncopyable&);
  SkNoncopyable& operator=(const SkNoncopyable&);
};

不太明白這里的冒號有什麽作用?是直接調用class SkNoncopyable 的構造函數?

[解决办法]

探讨

引用:

你说的哪个冒号啊,public:,这个冒号吗,指明下面的是public方法或属性


不好意思,沒有說太清楚,struct SkBitmap::MipMap : SkNoncopyable 結構體定義時的冒號!

热点排行