Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
djeyz
2 / 2 / 3
Регистрация: 01.04.2013
Сообщений: 70
1

VS 6.0 как правильно добавлять файл

03.01.2014, 15:51. Просмотров 394. Ответов 6
Метки нет (Все метки)

Здравствуйте!
Вопрос как правильно подключать файл к проекту в VS 6.0 WinApi!
Делал так ->
1.Project -> Add to Project -> New
2.прописывал в файле где определена функция WinMAin() имя файла #include "falsef.cpp"
3.прописывал в файле stdafx.h имя файла #include "falsef.cpp"
C++
1
2
3
4
5
6
7
8
9
10
11
#include "stdafx.h"
#include <iostream>
 
 
//using namespace std;
 
char *sss(){
    char *word = "asfsdsdf";
    int d = 0;
    return word;
}
C++
1
2
3
4
5
6
#include <iostream>
#include "falsef.cpp"
 
int WinApi WinMain(){
 
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#if !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)
#define AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_
 
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
 
#define WIN32_LEAN_AND_MEAN     // Exclude rarely-used stuff from Windows headers
 
#include <windows.h>
#include "falsef.cpp"
 
// TODO: reference additional headers your program requires here
 
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
 
#endif // !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_)
Так работает пока не начну добавлять что-то в файл falsef.cpp(редактировать его)!
Ошибка появляется
C++
1
2
falsef.obj : error LNK2005: "char * __cdecl sss(void)" (?sss@@YAPADXZ) already defined in transform2.obj
Debug/transform2.exe : fatal error LNK1169: one or more multiply defined symbols found
Как я понимаю ошибка связана с тем, что VS 6.0 думает что я хочу подключить как в консольном приложении

пробовал через конструкцию
C++
1
2
3
4
#ifndef falsef.cpp
#define falsef.cpp
     //имена ф-ций, так в VS 8.0 работает
#endif
Не проходит(((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2014, 15:51
Ответы с готовыми решениями:

Как правильно копировать и добавлять вектора?
Есть вектора vect1 и vect2, содержащие, допустим, значения double: using...

Как правильно добавлять и удалять элементы в вектор и из него
Всем доброго времени суток. Прошу объяснить как правильно добавлять и удалять...

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

Как правильно распарсить xml-файл?
Не могу понять, какие нужно вставить регулярные выражения, все время происходит...

Как правильно считать и записать в файл
Вот такие вот классы, как правильно записать, а затем считать из файла class...

6
djeyz
2 / 2 / 3
Регистрация: 01.04.2013
Сообщений: 70
05.01.2014, 14:49  [ТС] 2
Помогите пожалуйста кто-нибудь! я не думаю что вопрос такой сложный(((((
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
05.01.2014, 15:11 3
Цитата Сообщение от djeyz Посмотреть сообщение
#include "falsef.cpp"
Не нужно .cpp файлы подключать. Нужно добавить его в папку проекта. Потом правой кнопкой по имени проекта, Добавить - Существующий элемент, выбрать этот файл в папке проекта.
1
djeyz
2 / 2 / 3
Регистрация: 01.04.2013
Сообщений: 70
06.01.2014, 00:29  [ТС] 4
Цитата Сообщение от alsav22 Посмотреть сообщение
Не нужно .cpp файлы подключать. Нужно добавить его в папку проекта. Потом правой кнопкой по имени проекта, Добавить - Существующий элемент, выбрать этот файл в папке проекта.
Спасибо большое так и сделал
Создал файл
C++
1
2
3
4
5
6
#include <iostream>
 
int mart(){
    int f = 0;
    return f;
}
Добавил в папку проекта!Но при вызове функции
C++
1
g = mart();
появляется ошибка
C++
1
2
3
4
5
6
Compiling...
main.cpp
C:\WINDOWS\Рабочий стол\proect\first4\main.cpp(118) : error C2065: 'mart' : undeclared identifier
Error executing cl.exe.
 
first4.exe - 1 error(s), 0 warning(s)
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
06.01.2014, 00:42 5
Цитата Сообщение от djeyz Посмотреть сообщение
Но при вызове функции
Там, где вызывается функция (в данном случае, в main.cpp), должен быть виден её прототип:
C++
1
int mart();
И зачем в файле, с реализацией функции, #include <iostream>?

Добавлено через 3 минуты
Прототипы функций лучше помещать в отдельный .h файл, который потом можно пдключать ко всем файлам, где используются функции.
0
djeyz
2 / 2 / 3
Регистрация: 01.04.2013
Сообщений: 70
06.01.2014, 17:51  [ТС] 6
Спасибо большое все работает и поместил все в .h файл!))

Цитата Сообщение от alsav22 Посмотреть сообщение
И зачем в файле, с реализацией функции, #include <iostream>?
а iostream.h по привычке подключаю, когда пользовался консолью.
0
alsav22
5442 / 4837 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
06.01.2014, 18:30 7
Цитата Сообщение от djeyz Посмотреть сообщение
поместил все в .h файл!
Всё - это что?
0
06.01.2014, 18:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.01.2014, 18:30

Как правильно разделить файл в шаблонами?
Попробовал разделить один файл на два. В заголовочный &quot;proba.h&quot; поместил...

Как правильно редактировать файл txt ?
Задали задание с файлами ...Никогда ничего не делал, а тут задание записывать в...

Создать файл, в который можно добавлять, редактировать и удалять элементы структуры
По заданию нужно создать файл, в который можно добавлять, редактировать и...


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

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

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