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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
igor-x
0 / 0 / 0
Регистрация: 17.11.2009
Сообщений: 8
#1

Как правильно вызвать функцию? - C++

14.02.2011, 11:06. Просмотров 1305. Ответов 4
Метки нет (Все метки)

Добрый день.

подскажите как исправить ошибку:

C++
1
2
3
TAsync * Async ;
Async = new TAsync;
ComPort-> WriteStrAsync(ServerEdit->Text,Async );
в результате - сообщение об ошибке во время выполнения - invalid pointer operation.
похоже неверно сделан вызов ComPort-> WriteStrAsync ?

для справки строки из comport.hpp:

C++
1
2
3
4
5
6
7
8
9
//----
int __fastcall WriteStrAsync(const AnsiString Str, PAsync &AsyncPtr);
//---
typedef TAsync *PAsync;
 
class DELPHICLASS TComLink;
class PASCALIMPLEMENTATION TComLink : public System::TObject 
{
typedef System::TObject inherited;
--
Спасибо !
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2011, 11:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как правильно вызвать функцию? (C++):

Как правильно вызвать функцию с указателем на другую функцию как параметр - C++
Вот вариант: double f(double x) { ... } double k(double (*f)(double), double y) { ...

Как правильно вызвать функцию? - C++
Здравствуйте,посдкажите как правильно объявить функцию в private и вызвать ее в классе. Перепишите текст в сообщение. П. 5.18 и 5.19...

Как правильно вызвать эту функцию? - C++
int sum(int a, int b) { return a + b; } Варианты ответов: 1. sum ( int 7, int 8 ); 2. int sum(int a = 7, int b = 8); ...

Как правильно создать функцию и затем вызвать ее - C++
#include<string> #include <cmath> #include <iostream> #include<locale> using namespace std; int rl1,rl2,rl3,rl4,a,b,c,s; int...

Как вызвать функцию-член правильно для класса Person - C++
Задача простая, ввести фамилию и имя и вывести их. Подскажите, как правильно написать функцию вывода print(). Если один параметр...

Как правильно вызвать пользовательскую ф-цию - C++
Выдает ошибку, связанную с передачей массива, как аргумента ф-ции. #include <cstdlib> #include <iostream> #include <cmath> using...

4
Day
1158 / 963 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
14.02.2011, 11:59 #2
Попробуй звездочку поставить
C++
1
ComPort-> WriteStrAsync(ServerEdit->Text, *Async );
Добавлено через 1 минуту
А ServerEdit к этому моменту существует?
1
igor-x
0 / 0 / 0
Регистрация: 17.11.2009
Сообщений: 8
14.02.2011, 12:08  [ТС] #3
Цитата Сообщение от Day Посмотреть сообщение
Попробуй звездочку поставить
C++
1
ComPort-> WriteStrAsync(ServerEdit->Text, *Async );
Добавлено через 1 минуту
А ServerEdit к этому моменту существует?
без звездочки он не компилировался , поставил звездочку - при выполнении этой команды возникает ошибка "Access violation at address xxxx in module BORLANDMM.DLL. Read of address xxxxx"

ServerEdit - он на форме расположен , TEdit

если заменяю на ComPort->WriteStrAsync("123", *Async ); ошбка таже - "Access violation...."
0
Asazeus
0 / 0 / 0
Регистрация: 16.11.2012
Сообщений: 4
09.12.2012, 09:53 #4
Может кому пригодится..

Нужно писать:
C++
1
2
3
4
5
TAsync* Async;
Async = new TAsync;
InitAsync(Async);
 
ComPort1->WriteStrAsync("стринг",Async);
0
Elefanov
Сообщений: n/a
16.09.2014, 08:22 #5
Функция InitAsync самостоятельно выделяет память. По завершению использования вызвать DoneAsync. Правильнее будет так:
C++
1
2
3
TAsync* Async;
InitAsync(Async);
ComPort1->WriteStrAsync("стринг",Async);
16.09.2014, 08:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2014, 08:22
Привет! Вот еще темы с ответами:

Как правильно вызвать метод в С++ и как использовать команду goto в default - C++
#include <iostream>; #include <conio.h>; using namespace std; void main() { setlocale(LC_ALL, "Rus"); calculate(); ...

Как правильно вписать функцию в h-файл и правильно её отразить в основной функции? - C++
Создать внешнюю библиотеку, в которой написана функция вывода символьного массива обратном порядке. Подключить данную библиотеку к ...

Как вызвать функцию? - C++
У меня допустим есть уже готовые функции с именами от а0 до а1000 а мне нужно чтобы прога исходя из входных данных сама высчитала...

Как можно правильно вызвать apply в следующей ситуации... - C++
Здравствуйте. Хотел использовать метод apply для перебора элементов контейнера valarray. Но мне нужно получать доступ ко внешней...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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