Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
NIch
399 / 310 / 27
Регистрация: 17.03.2010
Сообщений: 1,120
#1

Функция возвращает объект - C++

01.12.2012, 15:59. Просмотров 1171. Ответов 2
Метки нет (Все метки)

Доброго времени суток!

Как сделать, чтобы функция возвращала объект, ну или указатель на объект.

Использую так:
C++
1
Image->Picture = Transform(Image->Picture);
Объявляю так:
C++
1
TPicture Transform (TPicture *Pict);
Ругается так:
C++
1
Cannot convert 'TPicture' to 'TPicture*'
Перепробовал разные комбинации символов * и &, при использовании и объявлении.
Выскакивают разные ошибки, только не то, что мне нужно.
Поясните пожалуйста в каком направлении копать применение указателей в функциях.

Не по теме:

В делфи все по другому, при изучении c++ сталкиваюсь с непонятками.



Добавлено через 48 минут
Ага...
Если я объявляю, перед использованием, так:

C++
1
2
3
4
TPicture *Transform (TPicture *Dst){
  // Тело
  return Dst;
}
То, все нормально.

Вопрос: Как правильно вынести функцию Transform в другой модуль, т.е. как объявить в файле *.h и файле *.cpp?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2012, 15:59     Функция возвращает объект
Посмотрите здесь:

Классы. Не возвращает найденный объект. - C++
class Worker { public: Worker() {} // finder Worker(int workerId) : itsWorkerId(workerId) { itsMoneysCount = 0;} ~Worker()...

Функция не возвращает значение - C++
#include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; int ca(int a) { int i,r; r = 0; ...

Функция возвращает auto - C++
В настройках ставлю галочку Have g++ follow the C++11 ISO C++ language standard Но все равно не компилится. template<typename...

Функция get() не возвращает значение - C++
Есть класс, в котором определен объект типа SDL_Surface*. Пытаюсь передать его в сторонний класс с помощью метода getScreen(), но он по...

Функция не возвращает значение - C++
#include <iostream> #include <fstream> #include <iomanip> #include "stdafx.h" using namespace std; const int max_size = 100; ...

Функция возвращает структуру - C++
Всем привет. Есть код взят из книжки "С++ 2008 для начинающих", ошибок при проверке не выдает , но при отдалке пишет: нет прав на чтение....

Функция не возвращает результат=( - C++
Добрый вечер. у меня такая проблема. мне нужно перегрузить функцию для моего класса: numb numb::operator +(const numb &p)const { ...

Функция не возвращает false - C++
Вообщем str это строка, которая может содержать в себе знак математической операции, скобки, число (например 1, 5, 556, 33 ..) и т.д. ...

Функция не возвращает значение - C++
Функция ничего не возвращает: int Return(int s) { return s; } Передаю в аргумент S целочисленную переменную, но результата в...

Функция возвращает массив - C++
Как сделать чтобы функция возвращала массив(не исползуя указатели):(. К присмеру: ... char v; // //заполнение массива // ...

Что возвращает функция size()? - C++
что выполняет функция size() не могу найти кто знает скажите плиз

Функция, которая возвращает массив - C++
Здравствуйте. Подскажите, пожалуйста, как правильно написать код - есть функция; она должна вернуть массив, который создается в этой же...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NeonLost
Пес войны
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
01.12.2012, 18:09     Функция возвращает объект #2
объявление в .h
реализацию в .cpp
NIch
399 / 310 / 27
Регистрация: 17.03.2010
Сообщений: 1,120
02.12.2012, 22:18  [ТС]     Функция возвращает объект #3
Спасибо, с эти разобрался.

Появилась еще одна проблема. Подобных вопросов нашел в сети уйму, но все равно ума не приложу как поправить.

После использования в коде
C++
1
fread(&N_L, sizeof(unsigned long), beg_L, SrcData);
после закрытия программы возникает ошибка "Invalid Pointer Operation", т.е. функция отрабатывает, но вот при закрытии...

Доп информация:
C++
1
2
3
4
5
6
7
8
// Файл
FILE *SrcData;
// Куда читаю
unsigned long N_L;
// Сначала открываю файл
SrcData = fopen(AFileName_Src.c_str(), "rb");
// Потом закрываю
fclose (SrcData);
На, что программа может ругаться? Подозреваю, что на утечку памяти, но как отследить ее?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru