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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Skrypnyk
1 / 1 / 0
Регистрация: 15.01.2013
Сообщений: 40
#1

Ошибка undefined reference to - C++

18.04.2013, 02:17. Просмотров 1491. Ответов 4
Метки нет (Все метки)

При сборке выбивает ошибку: undefined reference to `Atom:: DoBCC(float, int, int, int)'. Ткните носом, пожалуйста, где ошибка. Заранее благодарен.

main.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
31
32
33
34
35
#include <iostream>
#include "Atom.h"
 
using std::cout;
using std::cin;
using std::endl;
 
int main ()
{
    int latticeType;
    int dimX, dimY, dimZ; // number of translated lattices along each axis
    float d; // lattice parameter
    Atom myAtom; // object of class Atom
 
    cout << "Please choose the crystal lattice." << endl;
    cout << "Type 1 for BCC, 2 for FCC, and 3 for HCP:" << endl;
    cin >> latticeType; // read lattice type
    cout << "Please enter lattice parameter:" << endl;
    cin >> d;
    cout << "Please enter the number of translated lattices along X axis:" << endl;
    cin >> dimX;
    cout << "Please enter the number of translated lattices along Y axis:" << endl;
    cin >> dimY;
    cout << "Please enter the number of translated lattices along Z axis:" << endl;
    cin >> dimZ;
 
    if (latticeType==1) myAtom.DoBCC ( d, dimX, dimY, dimZ ); // if 1, create BCC lattice
    else
    {
        cout << "Invalid value" << endl;
        return 0;
    }
 
    return 0;
}
Atom.h
C++
1
2
3
4
5
6
7
class Atom
{
    public:
        void DoBCC ( float, int, int, int );
    private:
        float x, y, z;
};
Atom.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include "Atom.h"
 
using std::cout;
using std::cin;
using std::endl;
 
typedef class Atom AtomType;
 
void Atom::DoBCC ( float d, int dimX, int dimY, int dimZ ) // beginning of the DoBCC function
{
    float a = d; // lattice parameter
    int Lx = dimX;
    int Ly = dimY;
    int Lz = dimZ; // number of translated lattices along each axis
 
   //дальше работаю с переменными a, Lx, Ly, Lz
 
} // end of the DoBCC function
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.04.2013, 02:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка undefined reference to (C++):

Странная ошибка: [Linker error] undefined reference to `__dyn_tls_init_callback' [Linker error] undefined reference to ld returned 1 exit status - C++
Здравствуйте. Вот недавно начал изучать книгу &quot;С++ для чайников&quot; Стефан Р. Девис 4-е издание. И напоролся на кучу ошибок) Но смог все...

Ошибка `undefined reference to` - C++
Выскакивает вот такая вот ошибка: undefined reference to ?Подскажите, пожалуйста, как это исправить? И еще рядом с file.h находится...

Ошибка undefined reference - C++
Вот такая функция: void InitFMOD(){ FMOD_RESULT result; FMOD::System *system; result =...

Ошибка undefined reference to - C++
Взял пример из учебника С++ изнутри (Вайнер), но при попытке скомпилировать программу, возникают ошибки (gcc компилятор) ...

Ошибка undefined reference to - C++
main.cpp #include &lt;locale&gt; #include &lt;iostream&gt; #include &lt;Windows.h&gt; #include &quot;Class.h&quot; using namespace std; int main() { ...

Ошибка: undefined reference to `WinMain@16' - C++
Подскажите пожалуйста, что означает эта ошибка и как от нее озбавиться: Linking... ...

4
ssXXss
266 / 188 / 10
Регистрация: 15.01.2011
Сообщений: 681
18.04.2013, 02:48 #2
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
//atom.h
class Atom
{
public:
    void DoBCC ( float, int, int, int );
private:
    float x, y, z;
};
//atom.cpp
#include atom.h
 
typedef class Atom AtomType;
 
void Atom::DoBCC( float x, int x2, int x3, int x4 )
{
    int i = 0;
}
//main.cpp
#include ...
void main()
{
   Atom myAtom;
   myAtom.DoBCC(0,0,0,0);
}
итог : ========== Построение: успешно: 1, с ошибками: 0, без изменений: 0, пропущено: 0 ==========
сборка в VS 2012
полное сообщение ошибки какое?
1
Skrypnyk
1 / 1 / 0
Регистрация: 15.01.2013
Сообщений: 40
18.04.2013, 10:33  [ТС] #3
Очень странно. Онлайн компилятор тоже запускает нормально. Но мой Code::Blocks 12.11 все время орет на меня:
Build messages:
Кликните здесь для просмотра всего текста
C:\Users\oniltech\Dropbox\CMS\Molecular Dynamics\Assignment 1\revision 1\BCC_FCC_HCP.o:BCC_FCC_HCP.cpp|| undefined reference to `Atom::DoBCC(float, int, int, int)'|
||=== Build finished: 1 errors, 0 warnings (0 minutes, 7 seconds) ===|

Build log:
Кликните здесь для просмотра всего текста
mingw32-g++.exe -march=athlon64 -Wall -c "C:\Users\oniltech\Dropbox\CMS\Molecular Dynamics\Assignment 1\revision 1\BCC_FCC_HCP.cpp" -o "C:\Users\oniltech\Dropbox\CMS\Molecular Dynamics\Assignment 1\revision 1\BCC_FCC_HCP.o"
mingw32-g++.exe -o "C:\Users\oniltech\Dropbox\CMS\Molecular Dynamics\Assignment 1\revision 1\BCC_FCC_HCP.exe" "C:\Users\oniltech\Dropbox\CMS\Molecular Dynamics\Assignment 1\revision 1\BCC_FCC_HCP.o"
C:\Users\oniltech\Dropbox\CMS\Molecular Dynamics\Assignment 1\revision 1\BCC_FCC_HCP.o:BCC_FCC_HCP.cpp:(.text+0x1b2): undefined reference to `Atom::DoBCC(float, int, int, int)'
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 7 seconds)
1 errors, 0 warnings (0 minutes, 7 seconds)
0
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
18.04.2013, 10:51 #4
проверте что файл Atom.cpp вообще компилируется. может он в проект не добавлен.
быстрый способ проверки: в Atom.cpp че-нить некомплиируемое пишите, например слово jopa и собираете проект. Если компилятор не споткнулся на слове jopa а дошел до линковки - значит файл не включен в сборку.
1
Skrypnyk
1 / 1 / 0
Регистрация: 15.01.2013
Сообщений: 40
18.04.2013, 10:54  [ТС] #5
DU, Спасибо большое. То же самое на другом форуме посоветовал товарищ. Я вообще проект не создавал. Собирал три отдельных файла. После создания проекта все работает. Огромное спасибо всем за оперативные ответы!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.04.2013, 10:54
Привет! Вот еще темы с ответами:

Ошибка Dev C++ undefined reference - C++
Подскажите пожалуйста, при компиляции программы выдает ошибки: undefined reference to '_streams'. Как исправить? Заранее спасибо!

Ошибка undefined reference to `lpddsback' - C++
ну здраствуйте, начну свой рассказ с того что я начал изучать си++, и решил делать дипломку по нему, нашел книгу по созданию игр под винду...

Ошибка: undefined reference to `libssh2_session_init_ex' - C++
Взял пример программы работающей с libssh2 /* * File: main.cpp * Author: Gabriele Baldoni * * Created on...

Ошибка undefined reference to `main` - C++
Такая ошибка: /build/glibc-ryFjv0/glibc-2.21/csu/../sysdeps/x86_64/start.S|114|undefined reference to `main'| ||=== Build failed: 1...


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

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
18.04.2013, 10:54
Ответ Создать тему
Опции темы

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