Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

С++ самое начало

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> С++ самое начало
Имя
Сообщение << Старые топики   Новые топики >>
С++ самое начало - 2008-09-28 13:11:31.280000   
koro

Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
только взялся за c++, первые подводные камни)
всё делается в Visual C++ 2008 Express Edition.
создаю новый проект Win32 console aplication,
по дефолту  создаётся сорс файл (синим отмечен текст по дефолту, чёрным то что я пытаюсь сделать)

#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])
{
&nbsp;return 0;
}

#include "iostream"
int main()
{
&nbsp;cout&lt;&lt;"test\n";
&nbsp;return 0;
}
ошибка error C2065: 'cout' : undeclared identifier,
не могу понять почему cout&nbsp; не работает?

Post #: 1
RE: С++ самое начало - 2008-09-28 13:17:50.050000   
Mahoraz

Сообщений: 2908
Оценки: 30
Присоединился: 2007-03-15 20:51:18.450000
Я в С++ не силен, но разве после "iostream" двоеточие не ставится?
Post #: 2
RE: С++ самое начало - 2008-09-28 13:18:30.830000   
koro

Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
quote:

ORIGINAL: Mahoraz

Я в С++ не силен, но разве после "iostream" двоеточие не ставится?

 в мануале нет
Post #: 3
RE: С++ самое начало - 2008-09-28 13:52:17.233333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
std::cout

Возможно в книге было написано using namespace std;, а ты упустил?

Почитай главу про пространства имён, и всё станет понятно. cout - класс из пространства имён std.
Post #: 4
RE: С++ самое начало - 2008-09-28 14:01:59.753333   
koro

Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
_SaZ_ , точно =) +2
Post #: 5
RE: С++ самое начало - 2008-09-29 12:16:35.923333   
grig_64

Сообщений: 9
Оценки: 0
Присоединился: 2008-07-19 23:32:00.846666
мне кажется что нужно все-таки писать <iostream>, ну и using namespase std; я не знаю как в Visual Studio, но вообще в таких кавычках - "" указывают пользовательские подключаемые файлы, а дефолтные в <> заключаются.
Post #: 6
RE: С++ самое начало - 2008-09-29 15:31:31.916666   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Нет такого правила инклюдания. Просто если писать в кавычках, то в случае отсутствия заголовочного файла в каталоге с компилятором (и прочими прописанными путями), то искаться будет также в папке с .cpp-шником.

А using namespace std; - это вообще плохой стиль =\. Имхо гораздо лучше писать каждый раз std::list и пр…
Post #: 7
RE: С++ самое начало - 2008-09-29 17:25:13.803333   
HDDimon

Сообщений: 96
Оценки: 0
Присоединился: 2008-08-27 15:43:39.283333
По мне лучше лучше подключить сразу пространство стандартных имен, так если прога использует не дефолтные имена, то можно запутаться…
я бы написал так:
using namespace std
#include "stdafx.h"
#include "iostream"
//—————————————-
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}


int main()
{
cout<<"test\n";
return 0;
}
Post #: 8
RE: С++ самое начало - 2008-09-29 17:32:42.820000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
В больших проектах это неудобно, т.к. часто в разных нэймспейсах используются одинаковые имена. Собственно для этого и были придуманы нэймспэйсы. И, следовательно, лучше объявлять явно, к какому пространству имён идёт обращение. И _везде_ придерживаться одинакового стиля.
Post #: 9
RE: С++ самое начало - 2008-09-30 00:01:24.320000   
Wlada

Сообщений: 1233
Оценки: 0
Присоединился: 2007-09-24 12:01:26.970000
quote:

ORIGINAL: _SaZ_

Нет такого правила инклюдания. Просто если писать в кавычках, то в случае отсутствия заголовочного файла в каталоге с компилятором (и прочими прописанными путями), то искаться будет также в папке с .cpp-шником.

наоборот только если в кавычках то ищеться сначало в текущем потом в прилагающих а потом только компилер сходит посмотреть в системную библиотеку не завалялся ли там указаный файл :)
вообще cout&lt;&lt;"текст"; можно заменить на printf("текст");

З.Ы. тупой вопрос а почему? #include "iostream" когда надо iostream.h ? а лучше так #include <iostream.h>
Post #: 10
RE: С++ самое начало - 2008-09-30 00:30:00.956666   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Если приложение многопоточное - то между cout и printf достаточно существенная разница. И лучше писать в одном стиле. Как, например, не очень хорошо мешать new и *alloc.
Post #: 11
RE: С++ самое начало - 2008-09-30 00:56:17.186666   
Rаlf

Сообщений: 408
Оценки: 0
Присоединился: 2008-01-31 23:20:28.036666
Wlada +1.
При подключении библиотеки iostream забыл в конце добавить .h

Только что проверил, компилтся:
#include &lt;iostream.h&gt; #include &lt;conio.h&gt; void main() { cout&lt;&lt;"test\n"; getch(); }
Post #: 12
RE: С++ самое начало - 2008-09-30 02:14:01.683333   
keys

Сообщений: 137
Оценки: 0
Присоединился: 2008-08-06 08:48:50.340000
"file.txt"
это
искать file.txt в той же папке в которой сырец, если не нашёл выполнить <file.txt>
под < и > подразумевается что все стандартные и подключённые пользователем вручную пути будут проверены
Post #: 13
RE: С++ самое начало - 2008-09-30 10:37:16.950000   
Wlada

Сообщений: 1233
Оценки: 0
Присоединился: 2007-09-24 12:01:26.970000

quote:

ORIGINAL: _SaZ_

Если приложение многопоточное - то между cout и printf достаточно существенная разница. И лучше писать в одном стиле. Как, например, не очень хорошо мешать new и *alloc.

дело в том что printf пришел из Си и он там повсеместно используеться, а cout преимущество только С++
Post #: 14
RE: С++ самое начало - 2008-09-30 14:30:44.370000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333

quote:

ORIGINAL: Wlada

дело в том что printf пришел из Си и он там повсеместно используеться, а cout преимущество только С++

Дело в том, что нельзя одновременно использовать std::cout и printf в многопоточных приложениях. Если пишите на ++ - то и юзать нужно классы из ++.
Post #: 15
RE: С++ самое начало - 2008-09-30 17:09:04.226666   
koro

Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
люди , у меня уже давно нет вопросов )
Post #: 16
RE: С++ самое начало - 2008-09-30 17:33:33.063333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
А мы и не с тобой общаемся ^^
Post #: 17
RE: С++ самое начало - 2008-09-30 22:37:50.346666   
Saim

Сообщений: 415
Оценки: 0
Присоединился: 2008-08-06 22:36:41.303333
quote:

ORIGINAL: Rаlf

При подключении библиотеки iostream забыл в конце добавить .h


Это было в прошлом. Сейчас в вижле #include &lt;iostream&gt;
Post #: 18
RE: С++ самое начало - 2008-10-01 01:49:45.483333   
Wlada

Сообщений: 1233
Оценки: 0
Присоединился: 2007-09-24 12:01:26.970000

quote:

ORIGINAL: Saim
quote:

ORIGINAL: Rаlf
При подключении библиотеки iostream забыл в конце добавить .h

Это было в прошлом. Сейчас в вижле #include &lt;iostream&gt;

Я не использую вижуал у меня борланд и фриша, угадай куда меня фриша послала когда я написала без *.h [&:]
И такой стиль не есть гут надо чтобы везде компился а не только в мелкософте
Post #: 19
RE: С++ самое начало - 2008-10-01 06:24:30.626666   
Сhaos_Сode

Сообщений: 1049
Оценки: 0
Присоединился: 2006-01-12 11:54:12
Для крупных приложений врядли добиться что компилиться будет везде. Вернее можно но будут проблемы. В юникс ОС, что линух. что фряха, для графики юзается Qt и GTK, а в винде WinAPI.. То и то есть под винду, надо линковать статически ток. Но по любому это уже порт на винду. Плюс у меня возникали проблемы с тем что для некоторых функций консоли в линухах юзается ncurses/curses, в винде четото другое, не помню.. И с функами проблемы. То что линух нормально принимает(нативные сишные функции типа printf(), Visual Studio орет, что мол лучше заменить безопасными мелкософтными аналогами, хоть и компилит). Это на С. За правдивость сказанного не ручаюсь, давно не писал.
Post #: 20
RE: С++ самое начало - 2008-10-01 15:24:21.653333   
Punisherline

Сообщений: 8
Оценки: 0
Присоединился: 2008-07-02 22:14:37.813333
iostream поставь к остальным интерпретатрорам
Post #: 21
RE: С++ самое начало - 2008-11-07 21:59:38.976666   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: Wlada

Я не использую вижуал у меня борланд и фриша, угадай куда меня фриша послала когда я написала без *.h [&:]
И такой стиль не есть гут надо чтобы везде компился а не только в мелкософте


заголовочные файлы стандартной библиотеки C++ не имеют расширения - по стандарту (ISO/IEC 14882, пункт 17.4.1.2); так что аргумент насчёт мелкософта не принимается. читайте книги, они рулез
Post #: 22
RE: С++ самое начало - 2008-11-08 01:48:43.540000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Вот когда напишут компилятор, который сможет компилировать шаблоны в независимые единицы - тогда можно будет писать хеадеры с .h ;). А пока неактуально, т.к. файл с шаблонными классами сложно назвать заголовочным.
Post #: 23
RE: С++ самое начало - 2008-11-08 19:14:16.623333   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: _SaZ_

Вот когда напишут компилятор, который сможет компилировать шаблоны в независимые единицы - тогда можно будет писать хеадеры с .h ;). А пока неактуально, т.к. файл с шаблонными классами сложно назвать заголовочным.


ты сам понял что сказал? или ещё не протрезвел просто? какое отношение экспорт шаблонов (реализованный, ктати, во фронт-энде от EDG) имеет к именам заголовочных файлов стандартной библиотеки?
Post #: 24
RE: С++ самое начало - 2008-11-09 01:50:00.950000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
Ай. Ты флеймер (аля филосов). Любишь бессмысленный флейм разводить.
Post #: 25
RE: С++ самое начало - 2008-11-09 21:00:57.833333   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: _SaZ_

Ай. Ты флеймер (аля филосов). Любишь бессмысленный флейм разводить.


ну да - и не скрываю этого. а ты очень любишь врать, по поводу и без. кто из нас хуже?
Post #: 26
RE: С++ самое начало - 2008-11-10 02:38:37.200000   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333

quote:

ORIGINAL: Denaturat

ну да - и не скрываю этого. а ты очень любишь врать, по поводу и без. кто из нас хуже?


Вот знаешь, если будет не лень - составлю краткий обзор нашего диалога, где ты со ртом, полным пены доказывал, что я ламер, пока сам не прочитал про точность вычислений с плавающей точнкой (вожможно по одной из приведенных мной статей) и не написал более-менее правильное решение.

А вообще - все личные пожелания - в приват. Только вот если я резковато отвечу, а потом поствлю в игнор - не обижайся. Тут дело не в моём ламерстве, а в нежелании уподобляться петухам.
Post #: 27
RE: С++ самое начало - 2008-11-10 17:41:53.393333   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: _SaZ_

Вот знаешь, если будет не лень - составлю краткий обзор нашего диалога, где ты со ртом, полным пены доказывал, что я ламер, пока сам не прочитал про точность вычислений с плавающей точнкой (вожможно по одной из приведенных мной статей) и не написал более-менее правильное решение.

А вообще - все личные пожелания - в приват. Только вот если я резковато отвечу, а потом поствлю в игнор - не обижайся. Тут дело не в моём ламерстве, а в нежелании уподобляться петухам.


идиот. составляй какой угодно обзор "нашего диалога", можешь его хоть на дверь сортира повесить и медитировать над ним. последствия диалога какие? с меня - решение, с тебя - сопли. сравнение с заданной точностью я добавил исключительно ради твоего спокойствия, можешь его оттуда убрать - и программа чудесным образом всё равно будет работать для 99% входных значений

ламер ты или нет мне пофиг - факт в том что ты врёшь в ответах, выдавая себя за крутого программиста

в приват писать я ничего не намерен, хочешь мне что-нибудь высказать - высказывай. только помни, что слова неплохо бы подтверждать делом (или хотя бы аргументировать), а у тебя с этим я смотрю совсем плохо: ни ссылок на стандарт при уличении во вранье, ни кода элементарной лабораторной с отмазкой в стиле "работы много, времени нет"

или ты и правда хочешь поговорить про работу парсеров iostream и их связь со стандартом IEEE на числа с плавающей запятой? ты по-прежнему считаешь себя умней разработчиков стандартной библиотеки C++? что ж, давай поговорим. только будь готов опять слить, это у тебя хорошо получается
Post #: 28
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> С++ самое начало







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.