Hirdetés
- E-book olvasók
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Milyen billentyűzetet vegyek?
- Apple MacBook
- Milyen TV-t vegyek?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Milyen processzort vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Fejhallgató erősítő és DAC topik
- VR topik (Oculus Rift, stb.)
Új hozzászólás Aktív témák
-
Így? Ez sem műxik. De mindegy, mert megoldás van. Igazából tényleg az érdekel mi a különbség a kettő között, mindkettő változó definíció inicializálással.
class B
{
private:
A m_a;
public:
B()
{
m_a( "asdf" );
}dabadab: Viszont azzal a metódusdeklarációval igazad lesz, mert majdnem ugyanúgy néz ki.
-
-
-
Fordítási hiba.
Clang:
<source>:23:12: error: expected parameter declarator
A m_a( "asdf" );
^
<source>:23:12: error: expected ')'
<source>:23:10: note: to match this '('
A m_a( "asdf" );GCC:
<source>:23:12: error: expected identifier before string constant
23 | A m_a( "asdf" );
| ^~~~~~
<source>:23:12: error: expected ',' or '...' before string constantEz
A m_a = A( "asdf" );
ill. ezA m_a = { "asdf" };
is működőképes. Az elsőt még csak-csak értem, mert az, ha nem tévedek valami copy constructoros móka, bár nem tudom, hogy mennyire effektív, de a második, háááát. -
Valszeg láma kérdés, de nem értem. Ez nem megy:
#include <iostream>
class A
{
private:
std::string m_s;
public:
A( std::string s )
{
m_s = s;
}
std::string get()
{
return m_s;
}
};
class B
{
private:
A m_a( "asdf" );
public:
std::string get()
{
return m_a.get();
}
};
int main()
{
B b;
std::cout << b.get();
return 0;
}De ez igen:
#include <iostream>
class A
{
private:
std::string m_s;
public:
A( std::string s )
{
m_s = s;
}
std::string get()
{
return m_s;
}
};
int main()
{
A m_a( "asdf" );
std::cout << m_a.get();
return 0;
}A lényeg, hogy egyszer jó a
A m_a( "asdf" );
másszor meg nem. -
-
Van arra mód, hogy egy usingolt típusnévhez tagfüggvényt adjak? Tehát van egy ilyen:
using kiskutyak = std::unordered_map<string, kiskutya>;
kiskutyak k;Ide szeretnék egy olyat, hogy
k.print();
Ú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!
- 8 GB GeForce RTX 3070 Ti - garanciával
- HIBÁTLAN iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3287
- Felújított laptopok számlával, garanciával! Ingyen Foxpost!
- ŐSZI BOMBA AKCIÓK! PSN, STEAM, UBISOFT CONNECT, EA APP, XBOX EREDETI KULCSOK 100% GARANCIA
- LG 45GR95QE - 45" Ívelt OLED / 2K WQHD / 240Hz 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest