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

Классы.Ключевое слово static - выдает ошибку "неразрешенный внешний символ" - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Извлечение нужной информации из строки http://www.cyberforum.ru/cpp-beginners/thread1143085.html
Есть стока следующего вида: \\\\?\\usbstor#disk&ven_ufd_2.0&prod_silicon-power16g&rev_pmap#12021051046e6c21d00cf3b0461&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b} информация которую нужно вытащить выделена красным цветом. длинна нужной информации меняется, остальные символы в строке присутствую постоянно. Помогите извлечь инфу в отдельные строковые переменные. (очень не хочется писать...
C++ Сделать цветной конус из полей Edit Есть 100 полей Edit в виде блоков выстроенных рядами по 10. Можно ли использовать какой-нибудь цикл для того чтобы при задании любому полю значения большего 0, поля над ним (и оно само) становились какого-нибудь цвета снизу вверх под углом 45 градусов (как конус). Очень нужно, помогите пожалуйста. http://www.cyberforum.ru/cpp-beginners/thread1143067.html
C++ Конструктор
Объясните, пожалуйста, как работает этот код: PhoneBook::PhoneBook(const std::string & filename_ ):filename(filename_){} Весь код здесь : http://www.cyberforum.ru/visual-cpp/thread789968.html#post4156557 Это конструктор, который наследует filename? но filename это же простая строка, вообще непонятно..
Дано натуральное число. Определить являются ли цифры числа упорядоченными по убыванию C++
Решить с использованием класса #include <iostream> class NumberTester { public: bool operator () (int n){ int last_digit = -1;
C++ Метод итераций http://www.cyberforum.ru/cpp-beginners/thread1143040.html
#include <iostream> #include <math.h> using namespace std; //#define eps 0.001 void iteration(double **a,double *b,double *x,int n) { int i,j; double norma; double *xn=new double ; for(i=0;i<n;i++) xn=0;
C++ Выяснить в каком порядке ученики прийдут в школу Пожалуйста,помогите написать программу(2 вариант),ничего в голову не приходит:cry: Необходимо воспользоваться сортировкой подробнее

Показать сообщение отдельно
garjo_099
 Аватар для garjo_099
0 / 0 / 0
Регистрация: 08.04.2014
Сообщений: 31
09.04.2014, 00:39     Классы.Ключевое слово static - выдает ошибку "неразрешенный внешний символ"
Всем доброго времени суток.
Изучаю С++ по Шпаку и по урокам на сайте
Кликните здесь для просмотра всего текста
cppstudio.com
, предварительно хорошо ознакомившись с ассемблером...
Со всеми темами прорываюсь вперед без особых затруднений, дошел до изучения классов, начали появляться вопросы, вот решил найти себе пристанище для ответов.
По первому же запросу в гугле попал сюда =)
Ну да ладно...вообщем плохо разобрался со статической переменной static, точней понимаю, что она создаётся один раз, содержит последнее, внесённое в неё значение... а дальше, работа с классами и оператором расширения области действия :: очень запутался...

На данный момент вот такая проблема.

Visual studio 2013 выдаёт такие ошибки.

Мои догадки:
-из-за того, что интерфейс и реализация в одном файле...
-из-за компилятора, вставляю стандартный код, который был приведён для примера, выдаёт такие же ошибки.


Ошибка 1 error LNK2001: неразрешенный внешний символ ""private: static int AB::a" (?a@AB@@0HA)" C:\Users\garjo\Documents\Visual Studio 2013\Projects\Проект68\Проект68\Исходный код.obj Проект68

Ошибка 2 error LNK2001: неразрешенный внешний символ ""private: static int AB::b" (?b@AB@@0HA)" C:\Users\garjo\Documents\Visual Studio 2013\Projects\Проект68\Проект68\Исходный код.obj Проект68


Ошибка 3 error LNK1120: неразрешенных внешних элементов: 2 C:\Users\garjo\Documents\Visual Studio 2013\Projects\Проект68\Debug\Проект68.exe Проект68
при компиляции этого кода
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include <iostream>
 
using namespace std;
 
class AB //создаём класс 
{
private:
    static int a;
    static int b;
 
public:
    AB()
    {
        a = 1;
        b = 1;
        cout << "Тут сработал конструктор" << endl;//и здесь же их отобразим на экран
        cout << "a = " << a << endl;
        cout << "b = " << b << endl << endl;
    }
 
    void setAB()
    {
        cout << "Введите целое число а: ";
        cin >> a;
        cout << "Введите целое число b: ";
        cin >> b;
    }
 
    void getAB()
    {
        cout << "a = " << a << endl;
        cout << "b = " << b << endl << endl;
    }
 
    /*~AB() // это деструктор. не будем заставлять его чистить память, пусть просто покажет где он сработал
    {
        cout << "Тут сработал деструктор" << endl;
        system("pause");
 
    }*/
};
 
int main()
{
    setlocale(LC_ALL, "rus");
 
    AB obj1; //сработал конструктор
 
    obj1.getAB(); //для явной проверки
    obj1.setAB();   //присвоим новые значения переменным
    obj1.getAB();   //и выведем их на экран
 
    AB obj2;
    obj2.getAB;
    obj2.setAB;
    obj2.getAB;
 
    system("pause");
    return 0;
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru