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

Ошибки LNK2001 и LNK1120 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как работает сравнение float/double (IEEE 754) http://www.cyberforum.ru/cpp/thread1312537.html
Возможно нубский вопрос. int main() { double a, b, x, res; bool f; a = 0.5; b = 0.3; res = a + b; x = 0.8; f = res == x;
C++ C++ SDL 2.0 Портится ссылка на объект SDL_Renderer Доброе утро. Как всё работает: Есть главный класс CApp с объектом SDL_Renderer*, который вызывает CApp::OnInit(), который вызывает AreaControl.OnLoad( SDL_Renderer*), который вызывает CTexture.OnLoad(SDL_Renderer*), который вызывает SDL_CreateTextureFromSurface(SDL_Renderer*), после чего CApp::OnInit() вызывает Entity.OnLoad(SDL_Renderer*), который вызывает ... http://www.cyberforum.ru/cpp/thread1312298.html
C++ Необходимо найти такие три точки, которые определяют треугольник
Дано множество точек на плоскости . Необходимо найти такие три точки , которые определяют треугольник максимальной площади .
Реализация скалярного произведения двух векторов с оптиммизацией на CUDA C++
помагите реализовать операцию скалярного произведения двух векторов размерностью N на C++ с оптиммизацией на CUDA
C++ Разработка под PSP http://www.cyberforum.ru/cpp/thread1307645.html
Народ, есть у кого компилятор под PSP (*.PBP)? "C"-подобного языка... Нужно хотя бы выводить на нее консоль типа "CMD".
C++ Открыть и закрыть файл exe через определенное время Извините за тупой вопрос. Мне нужно просто открыть экзешник и со временем,например 5 секунд,чтобы сам просто закрылся. То есть просто открыть файл подождать закрыть. Если ли такая функция, типо открытие с таймером. например открыть C:\\Windows\\notepad.exe.:( подробнее

Показать сообщение отдельно
DrOffset
6914 / 4107 / 936
Регистрация: 30.01.2014
Сообщений: 6,906
30.11.2014, 17:54     Ошибки LNK2001 и LNK1120
Цитата Сообщение от Байт Посмотреть сообщение
Мне не очень понятно, почему бы начальное присвоение стат-члену не сделать прямо в описании класса?
Это связано с понятие linkage. Дело в том, что у статических переменных класса внешнее связывание. В таком случае, если каким-либо образом оставить их определение в h, то у нас появятся ошибки множественного определения. Эквивалент такого кода на С:
C
1
2
3
/*some.h*/
 
int s_count = 0;
Если мы включим этот файл в более чем один *.с, то получим ошибки линковщика насчет множественного определения. Поэтому на С мы бы написали так:
C
1
2
3
4
5
6
7
8
/*some.h*/
 
extern int s_count; // объявление
 
/*some.c*/
#include "some.h"
 
int s_count = 0; // определение
ничего не напоминает?

PS. Если детализированность ответа все еще неудовлетворительная, и что-то все равно не понятно, то спрашивай, я разверну еще. Давай добивать этот вопрос до конца
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru