Hirdetés
- Olyan lesz a Térkép, mint a segítőkész haver az anyósülésen
- Alaposan kitolhatod az Steam Deck üzemidejét egy új funkcióval
- Lassú lett a PC? Micsoda meglepetés: egy Windows frissítés lehet a ludas
- PlayStation 5 nélkül kínál PlayStation 5 játékokat a Sony
- Bekrepáltak a régebbi Forzák az NVIDIA új drivereivel
- Canon MILC: EOS R és M topik
- AMD Navi Radeon™ RX 9xxx sorozat
- PlayStation 5 nélkül kínál PlayStation 5 játékokat a Sony
- Fujifilm X
- Hobby elektronika
- Philips LCD és LED TV-k
- Fejhallgató erősítő és DAC topik
- Lassú lett a PC? Micsoda meglepetés: egy Windows frissítés lehet a ludas
- OLED monitor topic
- Projektor topic
Ú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. -
mgoogyi
senior tag
válasz
nonsen5e
#3826
üzenetére
Tudsz feltenni netre egy problémás minimál csomagot?
A leírásodból halvány fingom sincs, hogy mi lehet gond + nem tudok róla, hogy a .h és .hpp fileok között bármi különbség kéne legyen a kiterjesztésen kívül."rögtön különböző hibákra hivatkozik"
Konkrétan?"operator<< multiple deklarációra hivatkozik"
nem include-olod duplán ugyanazt véletlenül? (akár közvetetten is)
Ú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!
- Canon MILC: EOS R és M topik
- Xiaomi 15T Pro - a téma nincs lezárva
- AMD Navi Radeon™ RX 9xxx sorozat
- WLAN, WiFi, vezeték nélküli hálózat
- GTA VI
- PlayStation 5 nélkül kínál PlayStation 5 játékokat a Sony
- OnePlus Nord 3 - kapcsoljuk északot
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Építő/felújító topik
- Xbox Series X|S
- További aktív témák...
- iPhone 17 PRO 256GB makulátlan 1 hónapos KÁRTYAFÜGGETLEN! 2026 szeptember 25-ig Apple garancia!
- Gamer 17' 144hz Asus ROG i7, RTX 2070 Super, 2TB m.2 SSD
- R5 9600X/MSI PRO B650S-WIFI/32GB DDR5 6500MHz/1TB M.2/4TB HDD/RTX 5070 OC/750W.PLATINUM/ARGB CSODA
- LOGITECH G Pro X Superlight 2 Fehér INGYEN SZÁLLÍTÁS!
- Hynix 16GB 2933MHz DDR4
- Bomba ár! Lenovo ThinkPad L520 - i3-2GEN I 4GB I 160GB I DVDRW I 15,6" HD I Cam I W10 I Garancia!
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3407, 100% Akksi
- ÚJ Lenovo ThinkPad X13 Gen 5 - 13.3" WUXGA IPS - Ultra 5 135U - 16GB - 512GB - Win11 - 2,5 év gari
- Készpénzes / Utalásos Videokártya és Hardver felvásárlás! Személyesen vagy Postával!
- billentyűzetek - kiárusítás - Logitech, Corsair, ASUS
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


