cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:11
Оценка:
Какими заголовочными файлами вы пользуетесь, <cxxxxx> или <xxxxx.h>?
Re: cxxxxx vs. xxxxx.h
От: Nik_1 Россия  
Дата: 19.08.09 13:15
Оценка:
<xxxxx.h>
Re: cxxxxx vs. xxxxx.h
От: Alexander G Украина  
Дата: 19.08.09 13:19
Оценка:
Здравствуйте, igna, Вы писали:

I>Какими заголовочными файлами вы пользуетесь, <cxxxxx> или <xxxxx.h>?


Речь о стандартной библиотеке или собственных загоглвках?
Русский военный корабль идёт ко дну!
Re[2]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:19
Оценка:
Здравствуйте, Nik_1, Вы писали:

N_><xxxxx.h>


Почему?
Re[2]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:20
Оценка:
Здравствуйте, Alexander G, Вы писали:

AG>Речь о стандартной библиотеке или собственных загоглвках?


О стандартной библиотеке?
Re: cxxxxx vs. xxxxx.h
От: Lorenzo_LAMAS  
Дата: 19.08.09 13:20
Оценка:
<cxxxxx>
Of course, the code must be complete enough to compile and link.
Re[2]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:24
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L><cxxxxx>


Почему?
Re[3]: cxxxxx vs. xxxxx.h
От: Lorenzo_LAMAS  
Дата: 19.08.09 13:28
Оценка:
Здравствуйте, igna, Вы писали:

I>Здравствуйте, Lorenzo_LAMAS, Вы писали:


L_L>><cxxxxx>


I>Почему?

Ну эээ, может поэтому:

Annex D (normative)

1. This clause describes features of the C++ Standard that are specified for compatibility with existing implementations.
2. These are deprecated features, where deprecated is defined as: Normative for the current edition of the Standard, but not guaranteed to be part of the Standard in future revesions.

..............

D.5 Standard C library headers

Of course, the code must be complete enough to compile and link.
Re[3]: cxxxxx vs. xxxxx.h
От: Programador  
Дата: 19.08.09 13:30
Оценка:
Здравствуйте, igna, Вы писали:

I>Здравствуйте, Nik_1, Вы писали:


N_>><xxxxx.h>


I>Почему?


Поиски в файлах часто по разному понимают пустое расширение. Поэтому своим хедерам давать пустое тупо.
Re[3]: cxxxxx vs. xxxxx.h
От: Кодт Россия  
Дата: 19.08.09 13:36
Оценка:
Здравствуйте, igna, Вы писали:

N_>><xxxxx.h>

I>Почему?

Потому что не испытываю нужду тащить всякие printf внутрь namespace std (а потом оттуда их выковыривать с помощью квалификации std::printf или, тем более, using).
Такая нужда может возникнуть лишь при конфликте имён.
А поскольку некоторые вещи в CRT делаются не на инлайнах, а на макросах
#define isdigit(_c) (_isctype(_c,_DIGIT)) // stdlib.h из VC2005

то изначально лучше не конфликтовать с именами стандартной библиотеки.
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Перекуём баги на фичи!
Re[4]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:37
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L>Annex D (normative)

L_L>1. This clause describes features of the C++ Standard that are specified for compatibility with existing implementations.
L_L>2. These are deprecated features, where deprecated is defined as: Normative for the current edition of the Standard, but not guaranteed to be part of the Standard in future revesions.

L_L>..............

L_L>D.5 Standard C library headers


А дальше там вот что:

2 Every C header, each of which has a name of the form name.h, behaves as if each name placed in the
Standard library namespace by the corresponding cname header is also placed within the namespace scope
of the namespace std and is followed by an explicit using-declaration (7.3.3).


То есть следующая программа должна быть корректна:

#include <string.h>

int main()
{
    strcmp(0, 0);
    std::strcmp(0, 0);
}


VC++ и Comeau ее тем не менее не компилируют.
Re[4]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:38
Оценка:
Здравствуйте, Programador, Вы писали:

P>Поиски в файлах часто по разному понимают пустое расширение. Поэтому своим хедерам давать пустое тупо.


Прощу прощения за неясность вопроса, спрашивал конечно же о хедерах стандартных.
Re[5]: cxxxxx vs. xxxxx.h
От: Lorenzo_LAMAS  
Дата: 19.08.09 13:39
Оценка:
I>VC++ и Comeau ее тем не менее не компилируют.

ну так я-то включаю <cstring>
Of course, the code must be complete enough to compile and link.
Re[5]: cxxxxx vs. xxxxx.h
От: Lorenzo_LAMAS  
Дата: 19.08.09 13:42
Оценка:
заметь, что приведенный тобой пункт ничего не говорит о том, что должно быть доступно имя std
Of course, the code must be complete enough to compile and link.
Re[4]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:43
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Потому что не испытываю нужду тащить всякие printf внутрь namespace std (а потом оттуда их выковыривать с помощью квалификации std::printf или, тем более, using).

К>Такая нужда может возникнуть лишь при конфликте имён.

То есть только на случай кофликта имен и существуют заголовки вида <cxxxxx>, а по умолчанию нужно использовать <xxxxx.h>?
Re[6]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 13:48
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L>ну так я-то включаю <cstring>


И тогда strcmp к примеру определен только внутри std:: и использовать его без префикса std::, а также без using std::strcmp или using namespace std не получится?
Re[7]: cxxxxx vs. xxxxx.h
От: Lorenzo_LAMAS  
Дата: 19.08.09 13:52
Оценка: :)
я его использую как std::strcmp
Of course, the code must be complete enough to compile and link.
Re[5]: cxxxxx vs. xxxxx.h
От: Programador  
Дата: 19.08.09 13:59
Оценка:
Здравствуйте, igna, Вы писали:

I>Прощу прощения за неясность вопроса, спрашивал конечно же о хедерах стандартных.


Qt например дает путь к <xxxx>, которые уже вытаскивают #inclede "..\..\..\xz\lib\src\include\xxx.h" ну или в другом порядке. Причем в директориях lib, src, include неоднократно повторены на разных уровнях, как водится
Re[6]: cxxxxx vs. xxxxx.h
От: igna Россия  
Дата: 19.08.09 14:01
Оценка:
Здравствуйте, Programador, Вы писали:

P>Qt например дает путь к <xxxx>, которые уже вытаскивают #inclede "..\..\..\xz\lib\src\include\xxx.h" ну или в другом порядке. Причем в директориях lib, src, include неоднократно повторены на разных уровнях, как водится


Спрашивал о хедерах стандартных.
Re[7]: cxxxxx vs. xxxxx.h
От: Programador  
Дата: 19.08.09 14:04
Оценка: +1
Здравствуйте, igna, Вы писали:

I>Спрашивал о хедерах стандартных.


Я их вообще не использую, никак
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.