Нет ошибки функции соответствия в Xcode 3 - PullRequest
0 голосов
/ 01 февраля 2010

Я пытаюсь скомпилировать пользовательский класс в Xcode 3 и продолжаю получать ошибку вызова не совпадающей функции, хотя тот же пользовательский класс прекрасно компилируется под Windows. Очевидно, что-то не так с использованием фигурных скобок и компилятора XCode. Компилятор задыхается от первой фигурной скобки {ниже:

  : ADataBrowser(inOwnerWindow,inID,inOwner), mEncoding(kTextEncodingMacRoman)
                    {
                        std::memset( mCustomLabels, 0, sizeof(CFStringRef) * kMaxLevelCount);
                    }

Любые идеи высоко ценятся!

//Full source below

#pragma once

#include <ADataBrowser.h>
#include <AControls.h>

enum
{
 kMaxLevelCount = 16
};

class CArray;

class ACustomLabelList :
  public ADataBrowser
{

public:


      ACustomLabelList(
       ControlRef inControl,
       bool inOwner = false)
      : ADataBrowser(inControl, inOwner), mEncoding(kTextEncodingMacRoman)
      {
       std::memset( mCustomLabels, 0, sizeof(CFStringRef) * kMaxLevelCount);
      }

      ACustomLabelList(
       WindowRef inOwnerWindow,
       const ControlID &inID,
       bool inOwner = false)
      : ADataBrowser(inOwnerWindow,inID,inOwner), mEncoding(kTextEncodingMacRoman)
      {
       std::memset( mCustomLabels, 0, sizeof(CFStringRef) * kMaxLevelCount);
      }

      ACustomLabelList(
       WindowRef inOwnerWindow,
       const Rect &inBounds,
       DataBrowserViewStyle inStyle)
      : ADataBrowser(inOwnerWindow, inBounds, inStyle), mEncoding(kTextEncodingMacRoman)
      {
       std::memset( mCustomLabels, 0, sizeof(CFStringRef) * kMaxLevelCount);
      }


 virtual    ~ACustomLabelList();

 void    Initialize(CArray *inArray, const TextStyle &inStyle);

 CFStringRef   GetCurrentSelectionLabelString();
 void    SetCurrentSelectionLabelString(CFStringRef inString);
 void    SetLabelStringAt(CFStringRef inString, DataBrowserItemID inRowID);

 void    ShiftCurrentSelectionUp();
 void    ShiftCurrentSelectionDown();

 void    SendSelectionChangedEvent();

 CFStringRef *  GetLabelList() { return mCustomLabels; }
 void    GetLabelAt(Str15 outString, UInt32 inIndex);

protected:

 virtual void  ItemNotification(
       Item &inItem,
       DataBrowserItemNotification inMessage,
       ItemData &inItemData);

 virtual OSStatus GetItemData(
       Item &inItem,
       DataBrowserPropertyID inProperty,
       ItemData &inItemData);


 virtual OSStatus SetItemData(
       Item &inItem,
       DataBrowserPropertyID inProperty,
       ItemData &inItemData);


 CFStringRef    mCustomLabels[kMaxLevelCount];
 TextEncoding   mEncoding;

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

1 Ответ

0 голосов
/ 01 февраля 2010

Похоже, вы не включили файл, который объявляет std::memset.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...