Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Какая должна быть структура сложного (объемного) проекта? Работа программы начинается с выполнения функции main(). В самой программе куча функций и классов. Как организовать структуру достаточно сложного проекта (программы), чтобы не "утонуть" в ней? Насколько я понимаю, удобнее всего каждый осмысленный блок выделять в отдельный файл + хедеры также отдельным блоком, чтобы не мешались :) То есть получается нечто такое: main.cpp - укрупненная логика... https://www.cyberforum.ru/ cpp-beginners/ thread162804.html C++ #include <list> - конфликт using namespace std с другими инклюдами
Всем привет. Появилась надобность использовать списки, однако #include <list> подключается только вместе с using namespace std. Мои инклюды #pragma once #include "network.h" #include <d3dx9.h> #include "L_text.h" #include "L_smesh.h" #include "L_camera.h" #include "L_terrain.h"
C++ WMI и Dev-C++ Мне нужно узнать объем видеопамяти на эту тему на гуглил что нужно использовать Win32_VideoConfiguration Class, но компилятор ругается на кучу ошибок даже на этом примере http://msdn.microsoft.com/en-us/library/aa390423(v=VS.85).aspx https://www.cyberforum.ru/ cpp-beginners/ thread162784.html C++ Стражи включения Что значат эти строчки, #ifndef _CIRCL_H #define _CIRCL_H #endif /* _CIRCL_H */ понял так: если не дефинирована _CIRCL_H https://www.cyberforum.ru/ cpp-beginners/ thread162772.html
C++ Римская система счисления.
Всем здравствуйте! Очень нужна помощь в написании программы по переводу из римской системы счисления в арабскую на языке СИ. Я в этом почти ничего не понимаю. Заранее спасибо!
C++ Найти в строке string наиболее часто встречающуюся пару символов и заменить на один новый символ нужно найти в строке пару символов, которые повторяются чаще всех и заменить их на один новый символ например acfghhachfjiac "ac" заменить на "X" и чтобы в итоге вышло XfghhXhfjiX как считать строку из файла в стринг, если она содержит пробелы (нужно считать из файла строку с пробелами) https://www.cyberforum.ru/ cpp-beginners/ thread162752.html
C++ Ошибка в коде при использовании класов https://www.cyberforum.ru/ cpp-beginners/ thread162729.html
#include <iostream> #include <fstream> #include <time.h> #include <stdio.h> using namespace std; class Hello { int money, money_prize;; public: Hello()
корректировка уже введенных пользователем данных C++
Работаю в консоли. Пользователю выдаются показатели бух.баланса, после чего проверяется, сошелся баланс или нет (при инициализации переменных им присваивается нулевое значение). Как сделать, чтобы пользователь мог пропустить ввод показателя простым нажатием <Enter> (согласиться с предлагаемым умолчанием или уже введенным им в предыдущий заход значением)? Если я убираю в конце каждой строки...
C++ Переопределение операций Ситуация такая. В классе матриц переопределён оператор взятия индекса: float operator() (int row, int column) const; Сами данные (элементы матрицы) хранятся в виде одномерного массива, поэтому для простоты нужен этот оператор. В переопределении операции сложения хочу сделать так: result(i,j) = A(i,j)+B(i,j); https://www.cyberforum.ru/ cpp-beginners/ thread162706.html C++ Не пишет по-русски https://www.cyberforum.ru/ cpp-beginners/ thread162681.html
Ввожу значения переменных на русском языке, а вместо слов непонятные буквы. Что нужно дописать чтобы понимались русские слова? (Редактор MSVS 2010)
C++ Как создать неопределенное (т.е. не ограниченное в коде) количество экземпляров класса?
Если кратко, опишу задачу так. Есть баланс предприятия - "срез" показателей, который характеризуется рядом параметров (считай, большая таблица с одним столбцом значений). Баланс может рассчитываться по состоянию на любую дату. Нужно проанализировать некоторое количество последовательных балансов (грубо говоря, их может быть до 365*50=18250 экземпляров, хотя реально используется порядка 50,...
C++ обработка исключений Есть вот такой код: #include <iostream> #include <fstream> using namespace std; int _tmain(int argc, _TCHAR* argv) { //Input from file ifstream fin ("input.txt"); https://www.cyberforum.ru/ cpp-beginners/ thread162674.html
Эксперт С++
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
01.09.2010, 13:11 0

Link error на inline функцию - C++ - Ответ 935135

01.09.2010, 13:11. Показов 2482. Ответов 9
Метки (Все метки)

Ответ

Не по теме:

Открывать пространство имен в заголовочном файле - плохо.



Надо использовать для заголовочных файлов связку #ifndef-#define-#endif или, в крайнем случае, #pragma once

Теперь по теме: встроенные функции должны быть определены внутри заголовочного файла. Также рекомендуется ставить спецификатор inline у определения, а не у объявления метода.
Переделанная версия:
Cats.hpp:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef CATS_HPP
#define CATS_HPP
 
#include <iostream>
 
class OldCat
{
 
public:
 
    OldCat(int age);
    OldCat(const OldCat&);
    ~OldCat();
    int GetAge() const;
    void SetAge(int age);
    void Meow() const;
 
private:
 
    int itsAge;
};
 
inline int OldCat::GetAge() const
{
    std::cout << "Calling function GetAge..." << std::endl;
    return itsAge;
}
 
#endif // CATS_HPP
Cats.cpp:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "cats.hpp"
 
OldCat::OldCat(int age)
{
    std::cout << "Calling constructor..." << std::endl;
    itsAge = age;
}
 
OldCat::~OldCat()
{
    std::cout << "Calling destructor..." << std::endl;
}
 
OldCat::OldCat(const OldCat& rhs)
{
    std::cout << "Calling copy constructor..." << std::endl;
    itsAge = rhs.itsAge;
}
 
void OldCat::SetAge(int age)
{
    std::cout << "Calling function SetAge..." << std::endl;
    itsAge = age;
}
 
 
void OldCat::Meow() const
{
    std::cout << "Meeoooow!" << std::endl;
}
main.cpp:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <cstdlib>
 
#include "cats.hpp"
 
int main()
{
    OldCat* pPushok = new OldCat(7);
    pPushok->Meow();
    std::cout << pPushok->GetAge() << std::endl;
    OldCat* pMursik = new OldCat(*pPushok);
    pMursik->SetAge(15);
    std::cout << pMursik->GetAge() << std::endl;
    delete pPushok;
    delete pMursik;
    pPushok = NULL;
    pMursik = NULL;
    return EXIT_SUCCESS;
}

Не по теме:

Поле itsLapok было неиспользовано, поэтому я его удалил



Вернуться к обсуждению:
Link error на inline функцию C++
0
Заказать работу у эксперта

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.09.2010, 13:11
Готовые ответы и решения:

Причина ошибки [ilink32 Error] Error: Unable to perform link
Когда сохранил программу и пытаюсь открыть ее снова то мне выкидывает ошибку Warning: Error...

1>LINK : fatal error LNK1000: Internal error during IncrBuildImage
периодически возникает в VS2008 1&gt;LINK : fatal error LNK1000: Internal error during...

[ilink32 Error] Error: Unable to perform link C++ Builder
Warning: C:/Users/компьютер/Desktop/Diplom/Programms/Gotovo nu pucthi/Win32/Debug/Project1.ilc:...

[ILINK32 Error] Error: Unable to perform link
Всем привет! Пытаюсь скомпилировать проект, выбивает ошибку Error: Unable to perform link. Сам...

9
01.09.2010, 13:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.09.2010, 13:11
Помогаю со студенческими работами здесь

[ilink32 Error] Error: Unable to perform link
Error: Unable to perform link Короче что за ошибка Ошибка только одна такая все остальное это...

[LINK Error] Error: Unresolved external - C++
Error: Unresolved external &quot;TForm2&quot; referenced from &quot;~Рабочий стол\моя\PROJECT1MAEVSKI.OBJ&quot; ...

[LINK Error] Error: Unresolved external
Error: Unresolved external 'g_hInstance' referenced from C:\USERS\ADMIN\DESKTOP\EKN\UNIT1.OBJ...

Определение тактовой частоты. Еrror C2400: inline assembler syntax error in 'opcode'
в VS в _asm пишу определение тактовой чистоты,ругается: error C2400: inline assembler syntax error...

Не получается создать inline функцию
версия mySQL 5.5.25 пытаюсь создать функцию запросом: DELIMITER $$ create function test()...

Linker не находит inline функцию
Комплияция проекта проходит нормально, но компоновщик не может разрешить имена функций, описанных,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru