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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.06.2012, 00:31   #1
Melifasent
Новичок
Джуниор
 
Регистрация: 20.06.2012
Сообщений: 5
Восклицание Реализация приложения с сильноветвящимися деревьями на с++

Form1
Код:
private: System::Void btnOkVvod_Click(System::Object^  sender, System::EventArgs^  e) {
			 num++;
			 //ph = root->add(ph, Convert::ToInt32(this->txtVvod->Text));
Stdafx.h
Код:
#pragma once
#include<string.h>
#include<stdio.h>
#include <stdlib.h>

int kol=0, id_=0;
static int tabl[3][100];

class tree{
public:
	tree* add(tree* ph, int v){
		tree * ptmp = new tree;

		ptmp->val = v;
		ptmp->pn = NULL;
		ptmp->id = id_;
		ph = ptmp;

		return ph;
	}; 
tree **p;
	tree *pn;
	int val;
	int n;
	int id;
};
Это часть кода моего кода. Когда в Form1 раскомменировать строчку:
Код:
 //ph = root->add(ph, Convert::ToInt32(this->txtVvod->Text));
программа выдает 2 ошибки:
1>stdafx.obj : error LNK2005: "int id_" (?id_@@$$Q3HA) already defined in Сильноветвящееся дерево.obj
1>E:\Университет\Курсовая по программированию\Сильноветвящееся дерево\Debug\Сильноветвящееся дерево.exe : fatal error LNK1169: one or more multiply defined symbols found

Если вышеупомянутую строку закрыть под комментарии, ошибок нет, но и смысл всей программы тоже теряется.

Помогите пожалуйста, не могу понять, что именно не так!
Melifasent вне форума Ответить с цитированием
Старый 20.06.2012, 06:41   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Во-первых, это не С++.
Во-вторых, в h-файлах переменные "прототипируются", описываются, а память под них выделятся объявлением в cpp.
В-третьх, Stdafx.h не лучше для этого место, почитайте для чего он.
p51x вне форума Ответить с цитированием
Старый 20.06.2012, 09:15   #3
Melifasent
Новичок
Джуниор
 
Регистрация: 20.06.2012
Сообщений: 5
По умолчанию

Цитата:
Во-первых, это не С++.
Оу, а что же это тогда? Я программирую в Visual C++ 2008
Цитата:
Во-вторых, в h-файлах переменные "прототипируются", описываются, а память под них выделятся объявлением в cpp.
stdafx.cpp? Туда перенести функции?
Melifasent вне форума Ответить с цитированием
Старый 20.06.2012, 12:08   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Цитата:
Оу, а что же это тогда?
C++ CLI

Цитата:
Я программирую в Visual C++ 2008
Нет. Вы программируете в Microssoft Visual Studio 2008
p51x вне форума Ответить с цитированием
Старый 20.06.2012, 12:14   #5
Melifasent
Новичок
Джуниор
 
Регистрация: 20.06.2012
Сообщений: 5
По умолчанию

Цитата:
Нет. Вы программируете в Microssoft Visual Studio 2008
Ок, и как же это поможет в моей проблеме?
У меня ничего не работает(
Melifasent вне форума Ответить с цитированием
Старый 20.06.2012, 14:55   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Ну если вы посты не читаете, то никак. Решение я уже вам дал во втором посте.

Повторю, инициализацию (выделение памяти) в цпп-файл, а "прототип" через екстерн в хедер этого цпп-файла.
p51x вне форума Ответить с цитированием
Старый 20.06.2012, 22:55   #7
Melifasent
Новичок
Джуниор
 
Регистрация: 20.06.2012
Сообщений: 5
По умолчанию

Проблема решена.
Переменные int kol=0, id_=0; static int tabl[3][100]; поместила внутрь структуры. Это было не просто, но я справилась
Melifasent вне форума Ответить с цитированием
Старый 20.06.2012, 22:57   #8
Melifasent
Новичок
Джуниор
 
Регистрация: 20.06.2012
Сообщений: 5
По умолчанию

p51x, спасибо за помощь, хотя вашим советом я так и не воспользовалась. Но все равно спасибо
Melifasent вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Реализация приложения компонента Zeos NaomoVal Фриланс 0 21.05.2012 18:31
Работа с деревьями Alexey_kor Общие вопросы C/C++ 0 29.04.2012 19:14
Реализация полноэкранного приложения в консоли. Alt Помощь студентам 5 14.03.2010 21:48
Рисонок домика с деревьями!!! Cheerful-mermaid Помощь студентам 5 08.04.2009 22:32