Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2010, 16:11   #1
Serjuk
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 136
По умолчанию Создание объекта класса

Вообщем проблема в написании функции создания объектов. Функция должна создавать объект с id .Но программа выдает ошибку:
Код:
\coursepart3\main.cpp|160|error: cannot call member function `int ONE::Append(void*, size_t)' without object|
Подскажите в чем проблема
Код:

#include <iostream>
#include<cstdlib>
#include<cctype>
#include<cstring>
#include <new>
#include <fstream>
#include<vector>
using namespace std;
class A{
public:
   // функции
   A ();

   void func_1 ( int );
   void func_2 ( float ) const;

   // свойства
   int v1;
   int v2;

private:
   // функции
   void func_3 ( char );
   // свойства
   int v3;

public:
   // свойства
   int v4;
};
class ONE_A : public A{
public:
   /**
   * Создание нового объекта
   */
   static A one_new ( int &id);

};

class ONE
{
public:
 int Append(void* ptr, size_t sz);
 std::vector<std::string>   m_objects;
};

int main()
{
	setlocale(LC_ALL,"Russian");
	int id = -1;

      A c1 = ONE_A::one_new(id);
      c1.v1 = 11;
      c1.v2 = 22;
      c1.v4 = 33;
    
       A c2 = ONE_A::one_new(id);
      c2.v1 = -44;
      c2.v2 = -55;
      c2.v4 = -66;
  

	system("pause");
}
A ONE_A::one_new ( int &id)
{
   A* pCls = new A();
   memset(pCls, 0, sizeof(A));
   id = ONE::Append(pCls, sizeof(A));
   return *pCls;
}
int ONE::Append(void* ptr, size_t sz)
{
   string buf((char*)ptr, sz);
   m_objects.push_back(buf);
   return int(m_objects.size()) - 1;
}
Serjuk вне форума Ответить с цитированием
Старый 23.05.2010, 19:30   #2
Serjuk
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 136
По умолчанию

подскажите пожалуйста что не так...
Serjuk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возвращение объекта из функции класса atenon Общие вопросы C/C++ 9 19.05.2010 03:24
Если в классе объявить объект другого класса,будет ли видно переменные первого класса из объекта второго? TwiX Общие вопросы Delphi 3 15.11.2009 00:54
Cоздание объекта класса из API одного сервиса. Ошибки =( ZeBriD Общие вопросы C/C++ 6 23.09.2009 11:10
Присваивание объекту родительского класса объекта дочернего Викдон Общие вопросы Delphi 0 07.02.2009 15:27