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

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

Войти
Регистрация
Восстановить пароль
 
 
klynxe
10 / 10 / 4
Регистрация: 07.09.2012
Сообщений: 542
#1

Неверная передача значения - C++

01.02.2014, 00:43. Просмотров 614. Ответов 22
Метки нет (Все метки)

Есть
C++
1
typedef enum {a, b, c, d} my;
есть функция
C++
1
void MyF(my x)
ее вызов в виде
C++
1
2
MyF(0);
MyF(a);
работает нормально

А вызов в виде
C++
1
2
my temp=a;
MyF(temp);
или

C++
1
2
int temp=1;
MyF(temp);
не работает, почему? То есть компилируется, но значение передается неверное
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.02.2014, 00:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Неверная передача значения (C++):

Передача значения и передача переменной - C++
объясните мне разницу...и с кодами пожалуйста...думаю передача значений это через ссылки\указатели,а передача переменных-переменных ...

Передача значения по ссылке - C++
1. Объявите (в отельном заголовочном файле) и реализуйте (в другом файле) процедуры (они не возвращают значений!) согласно варианту. 2....

Передача значения в функцию - C++
Здравствуйте. Сам только начал изучать C++. В общем,никак не могу передать значение login в функцию. #include <iostream> ...

Передача значения в функцию - C++
Столкнулся с такой вот проблемой : есть функция (func_1) в которую передаются три параметра (два числа и массив) , она делает своё дело ,...

Передача значения по ссылке - C++
Даны два файла: fun.cpp: #include <math.h> double summa(float x, float eps, double& psl, int& k) { double s=0, sl=1/x, psl=0; int...

Передача значения переменной по ссылке - C++
Есть событие, которое происходит в методе someMethod, при выполнении которого программа вылетает. Методу someMethod нужно получить...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
01.02.2014, 01:28 #16
Цитата Сообщение от klynxe Посмотреть сообщение
Я думаю это типа 6 билдер в 2006 году, не?
http://ru.wikipedia.org/wiki/C%2B%2B_Builder
6ой был в 2002 году.
Цитата Сообщение от klynxe Посмотреть сообщение
Не работает, пробовал...
Конкретнее. Текст ошибки какой?
1
klynxe
10 / 10 / 4
Регистрация: 07.09.2012
Сообщений: 542
01.02.2014, 01:38  [ТС] #17
Ошибку не выдает

эта функция идет внутри транзакции БД
А вот по ее завершении (транзакции) БД вырубается, если переменную отправлять, а так все норм

Добавлено через 2 минуты
Цитата Сообщение от Tulosba Посмотреть сообщение
Цитата Originally Posted by klynxe View Post
Я думаю это типа 6 билдер в 2006 году, не?
http://ru.wikipedia.org/wiki/C%2B%2B_Builder
6ой был в 2002 году.
Буду знать, никогда не обращал внимания
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
01.02.2014, 01:38 #18
Цитата Сообщение от klynxe Посмотреть сообщение
А вот по ее завершении (транзакции) БД вырубается,
Надо смотреть доку на БД в таком случае.
0
klynxe
10 / 10 / 4
Регистрация: 07.09.2012
Сообщений: 542
01.02.2014, 01:42  [ТС] #19
Цитата Сообщение от Tulosba Посмотреть сообщение
Надо смотреть доку на БД в таком случае.
А что там хоть искать?
И все равно с точки зрения оправки, чем отличается когда я пишу
C++
1
ddlCreateField(hddlRec, "long_fld", ddlLong, NULL, NULL, &hfld2);
и так
C++
1
2
DDL_FIELD_TYPE type = ddlDouble;
ddlCreateField(hddlRec, "long_fld", type, NULL, NULL, &hfld2);
Что я в первом случае передаю? У меня переменной ddlLong вообще нет
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
01.02.2014, 01:48 #20
Цитата Сообщение от klynxe Посмотреть сообщение
А что там хоть искать?
Описание функции ddlCreateField для начала.
Цитата Сообщение от klynxe Посмотреть сообщение
чем отличается
Отличается тем, что в первом случае третьим параметром передается ddlLong, а во втором случае ddlDouble. Откуда у вас ddlLong, я, честно говоря, не понял, т.к. здесь
C++
1
2
3
4
5
typedef enum {
    ddlChar, ddlUChar, ddlWChar, ddlInt16, ddlUInt16, ddlInt32, ddlUInt32,
    ddlInt64, ddlUInt64, ddlFloat, ddlDouble, ddlDB_ADDR, ddlBLOB, ddlStruct,
    ddlInt8, ddlUInt8, ddlDate, ddlTime, ddlTimestamp, ddlBCD
} DDL_FIELD_TYPE;
его нет.
0
klynxe
10 / 10 / 4
Регистрация: 07.09.2012
Сообщений: 542
01.02.2014, 02:04  [ТС] #21
Цитата Сообщение от Tulosba Посмотреть сообщение
Отличается тем, что в первом случае третьим параметром передается ddlLong, а во втором случае ddlDouble. Откуда у вас ddlLong, я, честно говоря, не понял, т.к. здесь
Да ddlLong тут нет, не из того примера скопировал, сути не меняет

ddlCreateField описание

Добавлено через 2 минуты
C++
1
ddlCreateField(hddlRec, "long_fld", ddlInt64, NULL, NULL, &hfld2);
и так
C++
1
2
DDL_FIELD_TYPE type =ddlInt64;
ddlCreateField(hddlRec, "long_fld", type, NULL, NULL, &hfld2);
Так тоже самое
первый код работает, второй нет
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
01.02.2014, 02:11 #22
DDL_FIELD_TYPE точно верное название енума? И точно ли именно такой енум ожидается третьим аргументом функции?
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
01.02.2014, 02:13 #23
в example есть ddlLong, но в списке http://docs.raima.com/rdms/8_4/#ddl/ddlAlterField.htm нет.
Либо доку не обновили, либо ddlLong есть синоним для какого-нибудь ddlInt32 или ddlInt64.
Имеет смысл обратить внимание на код возврата ddlCreateField.

Добавлено через 1 минуту
Цитата Сообщение от klynxe Посмотреть сообщение
первый код работает, второй нет
Что вы понимаете под "работоспособностью" кода?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.02.2014, 02:13
Привет! Вот еще темы с ответами:

Передача значения в asm вставку - C++
Есть код: int d = 7; _asm { PUSH 1 PUSH d } Как передать значение переменной d в asm вставку, именно цифру...

Передача значения переменной в IplImage - C++
Есть данные в файле с названием изображений которые нужно рассматривать. Данные названия получаю таким образом: std::string file1,file2; ...

Передача значения из поля структуры в функцию - C++
Здравствуйте, у меня возникла проблема - у меня есть структура: struct game { char name_horse; char name_human; int...

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.02.2014, 02:13
Ответ Создать тему
Опции темы

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