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

Студия подчеркивает как ошибку, но все работает. - C++

Восстановить пароль Регистрация
 
Cool-T
20 / 13 / 1
Регистрация: 17.12.2010
Сообщений: 34
11.03.2012, 02:17     Студия подчеркивает как ошибку, но все работает. #1
Сабж. MS Visual C++ 2010, Express.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <time.h>
#include <conio.h>
template <typename T> class var
{
    clock_t create;
    T znachenie;
public:
    var(T zn=0):znachenie(zn), create(clock()){};
    ~var(){ std::cout << std::endl << "Peremennaya jila : " << clock()-create <<" ms. "<< std::endl; };
    friend std::ostream & operator<<(std::ostream & os, var & pri){os << pri.znachenie; return os;};
};
int main () 
{
    {
    var <int> privet=9001;
    std::cout << privet;    
    }
    _getch();
    return 0;
}
в "os << pri.znachenie"(12 строка) пишет мол znachenie недоступно. Но все компилируется и работает.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2012, 02:17     Студия подчеркивает как ошибку, но все работает.
Посмотрите здесь:

C++ Несмотря на ошибку, все работает
Вывести указатель на структуру на экран C++
C++ Как сделать, чтобы 12 Студия не выдавала ошибку на функцию fopen()
C++ Ошибка подчеркивает this.
как все это в подробностях работает? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
11.03.2012, 02:23     Студия подчеркивает как ошибку, но все работает. #2
попробуйте
friend std::ostream & operator<<(std::ostream & os, var<T> & pri)
разницы нет, но парсеру проще будет разобраться
а вообще - не всегда парсер может правильно понять код программы, даже если он корректен
Cool-T
20 / 13 / 1
Регистрация: 17.12.2010
Сообщений: 34
11.03.2012, 02:30  [ТС]     Студия подчеркивает как ошибку, но все работает. #3
Не помогло, но спасибо за информацию)
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
11.03.2012, 03:43     Студия подчеркивает как ошибку, но все работает. #4
Я вот таки непомню, для ссылок доступ к членам происходит через точку или стрелку?
Cool-T
20 / 13 / 1
Регистрация: 17.12.2010
Сообщений: 34
11.03.2012, 05:01  [ТС]     Студия подчеркивает как ошибку, но все работает. #5
Цитата Сообщение от kazak Посмотреть сообщение
Я вот таки непомню, для ссылок доступ к членам происходит через точку или стрелку?
Стрелка если указатель. Если не ошибаюсь. Вроде в стандарте C++11 можно и через точку.
А хотя стрелка убрала подчеркивание, спасибо)

Добавлено через 1 час 11 минут
Ааа, ссылка это разыменованный указатель. Понял.
Yandex
Объявления
11.03.2012, 05:01     Студия подчеркивает как ошибку, но все работает.
Ответ Создать тему
Опции темы

Текущее время: 23:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru