powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Вставка в map значений edit
13 сообщений из 13, страница 1 из 1
Вставка в map значений edit
    #38561960
verano naranjo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ребята, привет,

делаю первую лабу по с++ , не получается добавить в контейнер Map значения с edit box (мой код ниже)
Получаю ошибку "отсутствуют экземпляры конструктора, std::pair ..... , соответствующие списку аргументов типы аргументов (int, int)"
Вопрос: что не так с этой ошибкой ? не могу понять :( при чем тут int-int, если у меня пара int - string?

И еще вопрос: верно ли я произвожу вставку из edit box Или нужно обращаться к ним как-то иначе?

Заранее спасибо


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
void CLab_PhoneBookDlg::OnBnClickedBtnaddrec()
#include <iostream>
#include <map>
#include <string>
#include <utility>

using namespace std;

typedef map<int, string> pbmap;

int main()
	{
	pbmap phonebook;
	pbmap::iterator pbiterator;
	phonebook.insert(pbmap::value_type(IDC_EDADDNUM, IDC_EDADDFIO));
	}
}
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38561963
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verano naranjoпри чем тут int-int, если у меня пара int - string?
А как у тебя объявлено IDC_EDADDFIO?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38561964
verano naranjo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Добавлена переменная типа String
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38561966
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verano naranjoДобавлена переменная типа String
Не выдумывай, код скопипасть.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38561967
verano naranjo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

к Edit Control привязаны переменные (только я не понимаю, какую переменную использовать: Value или Control)
Я хочу передать значения переменных как значения элементов списка

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
CLab_PhoneBookDlg::CLab_PhoneBookDlg(CWnd* pParent /*=NULL*/)
	: CDialogEx(CLab_PhoneBookDlg::IDD, pParent)
	, addname(_T(""))
	, addnum(_T(""))
	, addname_val(_T(""))
	, addnum_val(0)
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CLab_PhoneBookDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialogEx::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_EDADDFIO, addname);
	DDX_Control(pDX, IDC_EDADDNUM, addnum);
	DDX_Text(pDX, IDC_EDADDFIO, addname_val);
	DDX_Text(pDX, IDC_EDADDNUM, addnum_val);
}
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38561978
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не угадал с кодом. Попробуй ещё раз найти объявление IDC_EDADDFIO. Объявление , а не
использование.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38561990
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verano naranjo,


Ну вот же

typedef map<int, string> pbmap;

и
phonebook.insert(pbmap::value_type(IDC_EDADDNUM, IDC_EDADDFIO));

у pbmap::value_type() должно быть два аргумента, первый -- int, второй -- std::string.
У тебя оба аргумента -- int.
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38562039
verano naranjo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZiv,

почему у меня оба аргументы int? (((
Я не понимаю, объясните. плз
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38562043
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verano naranjo,

IDC_EDADDNUM,
IDC_EDADDFIO

, на сколько я понимаю, должны выглядеть примерно так:

Код: plaintext
1.
2.
#define IDC_EDADDNUM 1005
#define IDC_EDADDFIO 1006



Если это не так, то покажи объявления и определения этих переменных.
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38562381
verano naranjo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZiv,

уже другой косяк: Expression: ("Incorrect format specifier", 0)

сделала проверку: вывести в msgbox значения, которые вводятся в EDit control.
newfio - переменная, созданная мастером, типа CString
newnum - переменная, созданная мастером, типа long.

Подозреваю, что проблема в переменной типа CString. но, что нужно сделать - не понимаю ((((
Подскажите. плз


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
void CPhBDlg::OnClickedBtnadd()
{
	// TODO: добавьте свой код обработчика уведомлений
	long n;
	CString f;
	char s[100];

	UpdateData(TRUE);

	n = newnum;
	f = newfio;

	sprintf_s(s, "New person %f with phone number %n", f, n);

	MessageBoxA(s);

}
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38562438
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verano naranjo,

Подозреваю, проблема у тебя одна, и её можно сформулировать так: ты не знаешь язык.
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38562443
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verano naranjo,

Таких форматных спецификаторов нет для этих типов. CString неплохая нельзя передавать в функции с елипсисом. В printf и его разновидности в частности.
...
Рейтинг: 0 / 0
Вставка в map значений edit
    #38562455
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv,

Устройство CString позволяет ему быть переданным в ellipsis, в том числе и в printf, хотя по стандарту это UB. Когда ты производитель компилятора и библиотеки ты можешь себе это позволить, поскольку UB в дам случае имеет четкое поведение.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Вставка в map значений edit
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]