-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.chmurka.net!.POSTED!not-for-mail
From: "Piotr Galka" <p...@c...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: Atmel Studio, projekt w wielu plikach i dyrektywa #include
Date: Mon, 25 Nov 2013 15:16:05 +0100
Organization: news.chmurka.net
Lines: 28
Message-ID: <P...@n...chmurka.net>
References: <l6sceu$3r4$1@portraits.wsisiz.edu.pl>
<P...@n...chmurka.net>
<0...@g...com>
NNTP-Posting-Host: 213.192.88.238
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original
Content-Transfer-Encoding: 8bit
X-Trace: althar.news.chmurka.net 1385388959 2321 213.192.88.238 (25 Nov 2013 14:15:59
GMT)
X-Complaints-To: abuse-news.(at).chmurka.net
NNTP-Posting-Date: Mon, 25 Nov 2013 14:15:59 +0000 (UTC)
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157
X-Newsreader: Microsoft Outlook Express 6.00.2900.5931
X-Priority: 3
X-Authenticated-User: PiotrGalka
X-MSMail-Priority: Normal
Xref: news-archive.icm.edu.pl pl.misc.elektronika:655776
[ ukryj nagłówki ]
Uzytkownik "Marcin" <m...@o...pl> napisal w wiadomosci
news:0ead3cc5-a14d-45c8-b2a1-5a1849d963b8@googlegrou
ps.com...
> W/g mnie ten drugi #ifdef ByteTypesH nie jest potrzebny. Pliki .h z
> toolachain'a zwykle maja juz wbudowane zabezpieczenie przed wielokrornym
> dolaczaniem
> Ja uzyl bym po prostu #include "ByteTypes.h" ktory dolaczy sie o ile juz
> wczesniej nie zostal dolaczony przez inny plik .h
Otoczenie #include przez #ifdef zapobiega analizowaniu przez kompilator
wlaczanego pliku. Kompilator nie jest jasnowidzem i po sekwencji:
#ifndef __ByteTypes_H__
#define __ByteTypes_H__
nie wie, ze reszty moze nie czytac - musi wyszukac pasujacy #endif wiec musi
przynajmniej analizowac kolejne #ifcostam (aby pominac odpowiednie
#endif-y), co oznacza koniecznosc czytania calego pliku i co najmniej
minimalnej analizy kazdej kolejnej linii kodu.
Moje pliki .h sa wzglednie krótkie, ale biblioteczne pliki .h potrafia byc
dlugasne.
Kiedys dawno, gdy zaczynalem, komputery nie byly tak szybkie jak teraz (do
tego pierwszy PC jaki kupilismy do firmy byl bez hdd).
Przyjalem sobie wtedy taki zapis (i juz tak zostalo) bo przy kompilacji
wiekszego programu oszczedzalo to otwierania i analizowania wielu plików, co
dawalo wyrazne przyspieszenie kompilacji nawet na komputerze posiadajacym
hdd, a co dopiero na moim.
P.G.
Następne wpisy z tego wątku
- 25.11.13 15:52 Marcin
- 25.11.13 18:49 Marek
- 25.11.13 19:47 Marcin
- 25.11.13 19:55 Marcin
- 24.11.13 22:06 janusz_k
Najnowsze wątki z tej grupy
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
- I3C
- Pytanie o transformator do dzwonka
- międzymordzie USB 3.2 jako 2.0
- elektronicy powinni pomysleć o karierze elektryka
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=