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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2012, 09:06   #1
hvz-
Форумчанин
 
Регистрация: 14.11.2010
Сообщений: 138
По умолчанию Visual C++/CLR string в структуре ошибка

Вобщем, выдаёт ошибку:
Код:
error C3265: cannot declare a managed 'info' in an unmanaged 'bin_derevo'	 7
Гуглил на эту ошибку, писал перед структурой ref и __gc - выдавало ещё большую порцию ошибок. Как можно нормально объявить в структуре строковый тип ? Чего только я не пробовал:System::String(использую в данный момент), String, CString, std::string(вообще ошибку выдаёт при подключённых iostream и using namespace std).
Помогите пожалуйста, вот сам проект.
Если же это не предоставляется возможным, какие ещё есть альтернативы ?

P.S. Юзаю Visual Studio 2005, Visual C++ -> CLR -> Windows Forms Application
hvz- вне форума Ответить с цитированием
Старый 24.01.2012, 20:26   #2
hvz-
Форумчанин
 
Регистрация: 14.11.2010
Сообщений: 138
По умолчанию

Ну неужели никто не знает ответа ?
hvz- вне форума Ответить с цитированием
Старый 24.01.2012, 20:46   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

#include <string>

и применяйте std::string.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 24.01.2012, 21:18   #4
hvz-
Форумчанин
 
Регистрация: 14.11.2010
Сообщений: 138
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
#include <string>
и применяйте std::string.
Цитата:
std::string(вообще ошибку выдаёт при подключённых iostream и using namespace std)
А сейчас заработало, странно...
А как выводить этот тип строки в listbox ? Пишет такую ошибку: error C2664: 'System::Windows::Forms::ListBox::O bjectCollection::Add' : cannot convert parameter 1 from 'std::basic_string<_Elem,_Traits,_A x>' to 'System::Object ^'

Проблему решил:
Код:
private: System::String^ std2gc(const std::string& s)
			 {
				 return gcnew System::String(s.c_str());
			 }
	listbox->Items->Add("tratata" + std2gc(std_string_var) + " tratata");

Последний раз редактировалось hvz-; 25.01.2012 в 00:20.
hvz- вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в структуре??? Sbenya Общие вопросы C/C++ 7 13.07.2011 01:53
Visual c++ CLR модернизация кода dampirik Помощь студентам 2 19.09.2009 02:20
Visual c++ CLR модернизация кода dampirik Общие вопросы .NET 4 15.09.2009 15:24
Вопрос по Visual c++ Clr dampirik Помощь студентам 3 08.09.2009 16:15
Visual c++ clr dampirik Общие вопросы .NET 1 27.08.2009 23:24