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

Файл заголовок - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Цикл и два вектора http://www.cyberforum.ru/cpp-beginners/thread617596.html
Доброй ночи, суть задачи: два вектора в одни водится "Имя" во второй значение типа int, нужно сделать проверку на уникальность введенных имен, и не могу понять как сделать, чтобы если имя не уникально то оно не записывалось бы в вектор Это упражнение первой части 4 главы, упражнение 19 в книге "Программирование. Принципы и практика использования C++" #include "std_lib_facilities.h"...
C++ Нахождение двойных пробелов Здравствуйте! Задача такова: Во всем тексте вставить переход на новую строку там, где есть два или больше пробела подряд Вот мой код: #include <stdio.h> #include <stdlib.h> #include <iostream.h> #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread617566.html
C++ Найти наибольший элемент массива в каждой строке.
Дан массив из n x m элементов. Найти наибольший элемент массива в каждой строке.
Веведение текста непосредственно на экран C++
Доброго времени суток всем, кто посетил эту тему. Я новичёк в программировании на c++. Заинтересовала такая вещь: Как вывести текст непосредственно на экран, а не в консоль. Т.е. вывел текст он постоял 5 секунд и исчез. Мои размышления: Создать окно как в WipApp и фон сделать прозрачным. И после в этом же окне написать текст.
C++ Объявление переменных внутри блока switch http://www.cyberforum.ru/cpp-beginners/thread617520.html
#include <iostream> int main() { int choice = 2; switch(choice) { //case 1: int x = 1; break; // ошибка case 1: int x; x = 1; break; // почему нет ошибки?
C++ Из Паскаля в С++ Здравствуйте. Помогите переписать этот код на C++. Сам пробовал, но не получается. var a,b:string; begin assign(input,'input.txt'); reset(input); assign(output,'output.txt'); rewrite(output); readln(a); read(b); a:=a+'a'; b:=b+'a'; while a+b<'aa' do подробнее

Показать сообщение отдельно
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
02.07.2012, 06:44     Файл заголовок
Цитата Сообщение от DaskOFF Посмотреть сообщение
это я понял, но пробовал и без ссылки передавать все равно ошибки.
В итоге решил убрать inline и все заработало , теперь не могу понять как это мешало
правда немного изменил функции теперь они выводят результат, а не возвращают строку
С inline не работает код без ссылок, но уже по другой причине. А с сылками, что с inline, что без inline - не работает. С inline без ссылок линковщик ошибки выдаёт:
1>------ Построение начато: проект: LAB, Конфигурация: Debug Win32 ------
1>lab04.obj : error LNK2019: ссылка на неразрешенный внешний символ "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl f(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?f@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z) в функции _main
1>lab04.obj : error LNK2019: ссылка на неразрешенный внешний символ "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl f(char)" (?f@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@D@Z) в функции _main
1>lab04.obj : error LNK2019: ссылка на неразрешенный внешний символ "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl f(void)" (?f@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) в функции _main
1>lab04.obj : error LNK2019: ссылка на неразрешенный внешний символ "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl f(double)" (?f@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@N@Z) в функции _main
1>lab04.obj : error LNK2019: ссылка на неразрешенный внешний символ "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl f(int)" (?f@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z) в функции _main
1>D:\MY C++Projects\LAB\Debug\LAB.exe : fatal error LNK1120: 5 неразрешенных внешних элементов
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
Добавлено через 21 минуту
Не знаю в чём тут дело, но с inline получается так: или поместить реализации функций в заголовочный файл (вместе с прототипами), или подключить файл с реализацииями в файле с main() (#include "Sa.cpp"), или, что, наверное, наиболее правильно, в файле реализации писать так:
C++
1
2
3
extern inline std::string f() {
    return "pusto";
}
Добавлено через 14 минут
Значит, если inline, то нужно реализацию и прототип в одном файле держать, или в реализации указать (через extern), что объявление функции находится в другом файле.
 
Текущее время: 10:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru