Hirdetés
- Philips LCD és LED TV-k
- Effektíve TKL méretűek a Corsair legújabb, numerikus paddal ellátott klaviatúrái
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Apple asztali gépek
- Kormányok / autós szimulátorok topikja
- AMD Navi Radeon™ RX 9xxx sorozat
- Gaming notebook topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Vezetékes FEJhallgatók
- Azonnali informatikai kérdések órája
Új hozzászólás Aktív témák
-
jattila48
aktív tag
válasz
nonsen5e #3826 üzenetére
.hpp-be lehetőleg ne tegyél fv. vagy globális változó defíníciót (csak deklarációt), mert ezeket beinklúdolod a különböző fordítási egységekbe, amik le is fordulnak, de mindegyik object kódban megjelenik a beinklúdolt fv. kódja, amit a linker többszörös definíciónak vesz. Pl:
//akarmi.hpp
#ifndef _AKARMI_HPP_
#define _AKARMI_HPP_
int f(int x){
return x;
}
#endif
//akarmi1.cpp
#include "akarmi.hpp"
#include <stdio.h>
int g(int x);
void main(void){
printf("%d",f(5));
printf("%d",g(6));
}
//akarmi2.cpp
#include "akarmi.hpp"
int g(int x){
return f(x);
}Itt az akarmi1.cpp-be, és az akarmi 2.cpp-be is bekerül az f fv. kódja, linkeléskor pedig dupla definíció miatt hibát ad a linker. Helyesen az akarmi.hpp-be csak deklaráció kerül (fv. prototype)
//akarmi.hpp
#ifndef _AKARMI_HPP_
#define _AKARMI_HPP_
int f(int x);
#endifés valamelyik .cpp állományba (akár új akarmi3.cpp-be) írod az f fv. definícióját.
Remélem tudtam segíteni.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Philips LCD és LED TV-k
- Mikrotik routerek
- Kínai és egyéb olcsó órák topikja
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Robotporszívók
- Effektíve TKL méretűek a Corsair legújabb, numerikus paddal ellátott klaviatúrái
- Milyen okostelefont vegyek?
- Autós topik látogatók beszélgetős, offolós topikja
- Xbox tulajok OFF topicja
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- További aktív témák...
- Playstation 5 lemezes - Gran Turismo 7, Tony Hawk's Pro Skater 1-2 eladó!
- ROG Ally (2023) RC71L + JSAUX HB1201S
- Vadonatúj, bontatlan iPhone AIR 256GB fekete és kék KÁRTYAFÜGGETLEN! 1 év Apple garancia!
- 3D nyomtatás kiváló minőségben / számlával / akár 9 színnel / széles anyagválaszték,
- HP,15.6",250 G6,8.gen.core i5 (8X4,0Ghz)8-32GB RAM,256GB-1TB SSD,nagyon jó akku,Win.11,szép
- LG 34GS95UE - 34" Ívelt OLED / QHD 2K / 240Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- Azonnali kézbesítés az év bármely pillanatában
- BESZÁMÍTÁS! Gigabyte H610M i5 13400F 32GB DDR4 512GB SSD RTX 3060Ti 8GB ZALMAN S2 TG Seasonic 650W
- Bomba ár! Lenovo ThinkPad X250 - i5-5GEN I 8GB I 128GB SSD I 12,5" HD I Cam I W10 I Garancia!
- LG 27UL500-W - 27" IPS - 3840x2160 4K - 60Hz 5ms - HDR10 - AMD FreeSync - 300 Nits - sRGB 99%
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest