-
IT café
Új hozzászólás Aktív témák
-
ALI_G
veterán
csináltam egy ilyen .headert és a main.cpp-ben includolva van:
#ifndef INC
#define INC
#include <iostream>
#include <string>
using namespace std;
#include "eloleny.cpp"
#include "ember.cpp"
#endifna most már más hibákat dobál, hogy mintha többször lenne deklarálva egy-egy class.
error C2011: 'Eloleny' : 'class' type redefinition
see declaration of 'Eloleny'
meg ilyesmi marhaságokFeltöltöttem az összes fájlt: [link]
-
félisten
Hali!
Igen, többször is van.
Az eloleny.cpp-be meg az ember.cpp-be is beinkludolod az inc.h-t. Oda nem kell, azaz húzd ki a #include "inc.h" sort belőlük.Fire.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
amargo
addikt
Proxy-n belül vagyok és a freeszerverek szűrve vannak, így nem tudom megnézni.
De azt már most látom, hogy nem igazán jó includolást használsz: #include "eloleny.cpp"
Leginkább ezeket szoktuk használni #include "eloleny.h" ilyenkor csak az osztály vázát tartalmazza
#include "eloleny.hpp" ezt leginkább template osztályoknál, amikor a kód is megvalósításra kerül benne.Pl egy sima header file, amit így includolsz az eloleny.cpp file ba majd:
#include "eloleny.h"
eloleny.h:
#ifndef ELOLENY_H
#define ELOLENY_H
class Eloleny
{
(...)
};
#endif“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”
-
ALI_G
veterán
válasz Fire/SOUL/CD #3502 üzenetére
de ha ifndef -van, akkor nem mind1? úgyis csak akkor copy-za, ha még nincs ott.
-
amargo
addikt
Gyakorlatilag, igen. Csak ez szabvány. Amint ahogy a kocsin is azért van az index, hogy más is tudja, mit akarunk.
Amúgy a baj:
inc-ben te include-od az ember osztályt, azaz, az embert akarod az emberben include-ni. Ami fura, minek? Az #ifndef-et nem erre találták ki, hanem, hogy 2x ne töltse be a header file-t.Inkább azt kövesd, ahogy leírtam, mert ez így partizánkodás és rossz is.
Dehogy javítást is írjak:
eloleny.cpp szedd ki az include-ot, ide minek, ezt fogod betölteni máshol.
az ember.cpp pedig csak az eloleny.cpp-t kell include-ni. a main-be akár jó az inc-include, csak tök felesleges, mert elég, az ember.cpp-t include-ni(ebben az esetben a main-be kell az stl-t behozni).“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”
-
amargo
addikt
Örülök
Ezek a feladatok, mégha saját magad is találod ki. Azért vannak, hogy gyakorolj, ebbe jóval több dolog tartozik mint maga a feladat megoldása.
Ezek az egyszerű példák meg nagyon jók, ezekkel tudsz egyfajta gondolkodás módot elsajátítani, amiből később megfogsz élni - azaz alkalmazni tudod egy sokkal bonyolultabb folyamatban.“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”
-
ocsi19
senior tag
Sziasztok!
Kaptam egy programozási feladatot: "Gyök meghatározása fokozatos közelítéssel"
Ezeket a segítségeket kaptam hozzá:
function fok_koz(x,eps:real; var r:boolean;g:fuggv):real;
var x0: real;
k: integer;
begin
writeln(' k x(k) x(k)-x(k-1)');
k := 0;
writeln(k:2, x:12:6, ' - ');
begin
repeat
x0:= x;
k := k + 1;
x := g(x0);
writeln( k:2, x:12:6, (x-x0):12:6);
until abs(x0-x) <= eps;
fok_koz:=x;
r:=false
end;r:=true;
end.és
"y=9,6e a -3,15x-ediken + 0,3x az 1,5-diken"
Nagyon megköszönném, ha valaki tudna egy picit segíteni, hogy hogyan induljak el, mert már nagyon kétségbe vagyok esve
Előre is köszönöm!
[ Szerkesztve ]
-
ALI_G
veterán
nem értem a kódot, de szerintem arra gondoltak, hogy Sorfejtéssel határozd meg egy Gyök értékét.
Papíron ez nem is olyan nehéz, mi analízisből tanultuk. Nem tudom, hogy mindenhez használható-e, de ha nem haladsz egyről a kettőre, akkor olvasd el ezt: wikipedia Taylor sorfejtés. -
ALI_G
veterán
default paraméter-t (konstruktorba és egyéb metódusoknál cpp-ben) csak a header fájlba lehet rakni?
egyébként átírtam és működik, de a return 0; a main végén miért nem eredményezi azt Visual studioban, hogy kér egy billentyűt a futás végén? konzolos program lévén nem látom a kimenetet.
[ Szerkesztve ]
-
amargo
addikt
Szia
Érdemes ezeket végig nézned és megcsinálgatni Porkoláb Zoltán
Kérdésedre válaszolva, default parameter megadásakor elég csak egyszer a függvény deklarációjakor megadni. Ha a main előtt adod meg és gyakorlatilag már a definíciót írod le, akkor elég csak ott megadni.
azaz:
void foo(int i = 0); //deklaráció
void foo(int i = 0) //definíció
{
std::cout<< i << std::endl;
}return 0; -ra azért nem áll meg a VS (talán be lehet állítani) mert a program futása a main-nál ilyenkor megszakad a program futása (általában), de ha ezt berakod
system("PAUSE");
akkor meg fog állni
“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”
-
ocsi19
senior tag
"3509"
Még mindig várnám a segítséget, amennyiben valakinek van rá egy kis ideje
Küszködök vele egy ideje...
Eddig még nem éreztem rá nagyon, azt hiszem nem leszek programozó... -
Jester01
veterán
Külső programot használ egy egyszerű funkcióra, rossz hatékonyság, extra függőség (mi van ha nincs a PATH-ban pause?) Ráadásul nem is platformfüggetlen. A kezdő programozó meg elhiszi, hogy ez a helyes anélkül, hogy belegondolna: a pause.exe-t is megírta valaki, tehát valahogy meg lehet csinálni.
Ilyen egyszerű programoknál általában simán elég az enter-re várás (a line buffering miatt a tetszőleges billentyű már nem platformfüggetlen). Tehát egy
string tmp; cin >> tmp;
bőven jó.
Jester
-
KPepe
senior tag
üdv!
Azt a feladatot kaptuk, hogy select-es vagy poll-os megvalósítással írjunk olyan szervert, ami a gethostbyname() fv segítségével lekérdezi a kliens által küldött weboldal adatait. Lényeg, hogy futtatom a szervert, másik ablakból telnettel csatlakozok rá, és ha elküldöm neki pl. a www.prohardver.hu címet, akkor visszaküldi az adott kliensnek a hostent struktúrából kinyerhető adatokat.
Ez idáig működik is. Annyi bajom van vele, hogy ha csatlakozok egy klienssel, és küldök a szervernek valamit, akkor onnantól több kliens nem tud felcsatlakozni, az accept() fv elszáll. De ha elindítom a szervert, és egyből csatlakozok 2 klienssel, akkor működik mindkettőben a gethost dolog.
Ha valaki lenne olyan kedves, és vetne rá egy pillantást, hogy mit szúrhattam el, azt megköszönném!
Select-el csináltam, és természetesen linux.A tüzérség előtt minden és mindenki egyenlő. A föld színével.
-
Jester01
veterán
válasz Jester01 #3519 üzenetére
Ja, viszont valgrind szólt, hogy accept hívásban a harmadik paraméter (a méret) nincs inicializálva. Ez okozhat hibát, attól függően, hogy éppen milyen véletlen adat van az adott címen.
man accept: The addrlen argument is a value-result argument: it should initially contain the size of the structure pointed to by addrJester
-
KPepe
senior tag
válasz Jester01 #3519 üzenetére
Ez érdekes, 2 napig így fordítottam, nem szólt, de ma nekem is hibát írt a fordító.
(#3520)
Valóban, a size inicializálása volt a gond, pótolva már nekem is sikerül bármikor kapcsolódni egy újabb klienssel.Köszönöm a segítséget!
A tüzérség előtt minden és mindenki egyenlő. A föld színével.
-
akasp
senior tag
sziasztok!
c++ ban egy intet hogyan konvertálok egyszerűen stringgé és vissza egyszerűen és gyorsan?
mod: atoi és itoa fügvényekről azt olvstam, h nem minden compilerrel müxik..
[ Szerkesztve ]
-
sghc_toma
senior tag
pl. ez egy megoldás:
#include <iostream>
#include <sstream>
using std::string;
using std::stringstream;
string my_itoa(int _i)
{
stringstream sstream;
sstream << _i;
return sstream.str();
}
int my_atoi(string _s)
{
stringstream sstream(_s);
int ret;
sstream >> ret;
return ret;
}[ Szerkesztve ]
in asm we trust
-
akasp
senior tag
hopp még1kérdésem van csak már nemfért bele a mod időbe:
szal (c++ban továbbra is) hogy tudom eldönteni egy char ról h az szám e vagy "karakter" -e?
pl:
char a= '9';
=> ekkor szám
char b= 'z';
=> ekkor meg nem szám
sza ilyesmire nincs egy függvény?
MOD: sghc_toma: köszi
[ Szerkesztve ]
-
ALI_G
veterán
hi!
ötlet kellene egy minimax algoritmushoz (két személyes játék, felváltva lépnek táblán).
Nagyjából összedobtam, csak még sem.
Röviden annyit csinálok, hogy van a tábla jelenlegi állapota, átadom a függvénynek, ami kiszámolja először a Max, majd az összes lehetséges (abból következő) lépésre a Min értékeket (ez egy táblázatban van).
CSak hogy akkor az állapottér, hogy csillió év múlva érne véget ha végigszámoltatnám. Hogyan korlátozzam, hogy csak pl. 2-3 mélységre számoljon, és abból következtessek a legjobb lépésre? -
denetol
csendes tag
Hello!
Segítségre lenne szükségem.C nyelven megirt aknakereső programra lenne szükségem vagy olyan linkre ahol találok segítséget a megirásához.A segítségeket előre is köszönöm. -
nagyúr
Sziasztok!
Adott néhány ősrégi, dokumentációval nem, csak forráskóddal rendelkező clipper program adatbázisokkal, kiegészítő batch file-okkal, miegyebekkel. Ennek feltérképezéséért, módosításáért, az adatbázisok összefésüléséért, a programkód módosításaiért, mely változtatások a program további használhatóságát biztosítják (értsd: nem kell új szoftvert íratni) majd az újrafordításért, kitesztelésért, telepítésért, betanításért, további esetleges karbantartásért mennyit lehet kérni? Csak úgy nagyságrendileg érdekelne a dolog, árajánlatot kellene adnom.
Köszi!
''És nagy kópék vagyunk. Igyunk barátaim, yo-hoo!'' - Jack Sparrow
-
lakisoft
veterán
Sziasztok! Van itt aki képben vagy Xquery-ben? A részleteket privátban elmondom.
Előre is köszi!
lakisoft -
Blaise
veterán
Sziasztok !
Kellene írnom egy beolvasófüggvényt C++-ban, ami az ehhez hasonló gps adatokat olvassa be fájlból:
"$GPGGA,130350,4728.7922,N,01905.4297,E,1,03,3.0,259.1,M,40.9,M,,*46"
Tudtok segíteni ?
-
ALI_G
veterán
üdv.
deklarácio:
friend std:stream& operator<<(std:stream &os, const Csillag &cs);std::ostream& operator<<(std::ostream &os, const Csillag &cs) {
os << "A csillag neve: " << cs.name << ", merete: " << cs.m << ", sugara " << cs.r << ", fenyessege " << cs.f;
return os;
}ebben a c++ részletben mi a probléma? A return os; elvileg referencia szerint kellene vissza adódnia, de error-t dob Visual studio, eléggé értelmetlent
Annyira még nem érzem ezeket a cpp-s referenciákat...A másik meg, hogy:
Csillag& Csillag::operator+(Csillag &cs) {
double kcs_m = m + cs.m;
double kcs_r = sqrt(r * cs.r);
double kcs_f = (f + cs.f) / 2;
Csillag *kcs1 = new Csillag( kcs_m, kcs_r, kcs_f, name, true );
cs.~Csillag();
Csillag::~Csillag();
return *kcs1; //referencia szerinti atadas!
}ebben a return *kcs1 helyett eredetileg simán return kcs1; szerepelt, de úgy error volt A VS javaslatára "dereferáltam", így nem dob hibát, de itt is referencia szerint akarom visszaadni, de ahogy én tudom (pointer dereferencia nélkül) úgy hibás
-
ALI_G
veterán
ja igen, és a kimenet:
Csillag.obj : error LNK2019: unresolved external symbol "public: __thiscall Csillag::~Csillag(void)" (??1Csillag@@QAE@XZ) referenced in function "public: class Csillag & __thiscall Csillag::operator+(class Csillag &)" (??HCsillag@@QAEAAV0@AAV0@@Z)
G:\---===Dokumentumok===---\Programozás\C++\Csillag\Debug\Csillag.exe : fatal error LNK1120: 1 unresolved externalsnem sokat értek belőle de legalább észrevettem, hogy 2 hiba is van. A feloldással van valami baj még
mod: bocs, az előbbiben maradt egy komment, meg az első sorba fordított nekem PH smiley-kat is mert nem raktam kódba
[ Szerkesztve ]
-
ALI_G
veterán
szóval az a
Csillag::~Csillag();
az nem jó, eredetileg úgy szerepelt, hogy ~Csillag(); ami szerintem jónak kellene lenni, de ilyen hibát ad:
error C2675: unary '~' : 'Csillag' does not define this operator or a conversion to a type acceptable to the predefined operator
ezt találtam rá google-lel: [link], de nekem ez nem segített mármint nem értem mit akar.
-
ALI_G
veterán
de hülye vagyok!!! wáááá, hát kézzel nem szabad destruktort hívni!!!!
-
Javver
csendes tag
Sziasztok!
ha tudtok segítsetek nekem....php...4/3 szerveren semmi goind de az egyiken ezt irja ki és nem tudom miért....
Cannot modify header information hibaüzenet....
ime a kód..
<?php session_start();
?>
<html>
<body>
<center>
<h2>Login Check Hiba</h2>
Hibás bejelentkezési adatok, vagy nem megerősített regisztráció!<BR>
<A HREF="loginurlap2.php">BEJELENTKEZEK!</A><br>
<A HREF="reg.htm">REGISZTRÁCIÓ</A>
<?php
$username = $_POST["user"];
$pw= $_POST["pass"];
include("adatbazis.php");
$eredmeny=mysql_query("SELECT jszo FROM user WHERE fnev='$username'");
$user=mysql_fetch_row($eredmeny);
$eredmeny2=mysql_query("SELECT submitted FROM user WHERE fnev='$username'");
$sub=mysql_fetch_row($eredmeny2);
mysql_close($kapcsolat);
if (($user[0]==md5($pw)) && ($sub[0]=="true")) {
$_SESSION["logon"]="ok";
$_SESSION["fn"]=$username;
Header("Location:http://www.hotellevai.hu/forum.php");
}
?>
</center>
</body>
</html>a location -nal van baja, de miért....
-
Javver
csendes tag
Cannot modofy header information....a Location nem hajtja végre... de miért?
<?php session_start();
?>
<html>
<body>
<center>
<h2>Login Check Hiba</h2>
Hibás bejelentkezési adatok, vagy nem megerősített regisztráció!<BR>
<A HREF="loginurlap2.php">BEJELENTKEZEK!</A><br>
<A HREF="reg.htm">REGISZTRÁCIÓ</A>
<?php
$username = $_POST["user"];
$pw= $_POST["pass"];
include("adatbazis.php");
$eredmeny=mysql_query("SELECT jszo FROM user WHERE fnev='$username'");
$user=mysql_fetch_row($eredmeny);
$eredmeny2=mysql_query("SELECT submitted FROM user WHERE fnev='$username'");
$sub=mysql_fetch_row($eredmeny2);
mysql_close($kapcsolat);
if (($user[0]==md5($pw)) && ($sub[0]=="true")) {
$_SESSION["logon"]="ok";
$_SESSION["fn"]=$username;
Header("Location:http://www.hotellevai.hu/forum.php");
}
?>
</center>
</body>
</html> -
shev7
veterán
Mert a headert nem tudod modositani miutan megjelenitendo tartalmat kuldtel. Hogy miert mukodik 3-on az nem tudom, a link szerint egyiken sem kene mukodni.
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
akasp
senior tag
hali. elég láma kérdés lesz de sehogyse jövök rá hogy hogy kellene megvalósitani mármint szintaktikailag.
szal van egy ilyenem hogy
vector<string> s;
namost ezt az egész tömböt kéne átadni egy függvénynek, de nem "lemásolva" a tömböt hanem mondjuk a címét.
mit kell irni a függvény argumentumába?
köszi előre is.
jah és ha már itt vagyunk, akkor hogy adom át úgy, hogy lemásolódjon a tartalma tehát hiába változtatom a függvényen belül az az eredeti tömböt nem fogja változtatni?
köszi
-
akasp
senior tag
júúj a másik ami kiborította a bilit:
jön a standard bemenetről az anyag (vagy file, tökmind1)
ilyenem van hogy:
string sor;
while(cin >> sor) {
}és azt kell leenőriznem ha mivan ha az egy üres sor.
se ez nem jó hogy:
if( sor.empty() ) {}
de még ez se:
if( sor.at(0)=='\0' ) {}
hogy tudnám ezt megoldani?
[ Szerkesztve ]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- The Witcher - Jön az 5. évad, ezzel együtt pedig elkaszálták a sorozatot
- ThinkPad (NEM IdeaPad)
- Hálózati / IP kamera
- Anglia - élmények, tapasztalatok
- Azonnali fotós kérdések órája
- 3D nyomtatás
- PlayStation 1 / 2
- Sony Xperia bemutató lesz május 17-én
- Kínai, és egyéb olcsó órák topikja
- PlayStation 5
- További aktív témák...
- ÚJ BONTATLAN Macbook Air Apple M1 M2 M3 Legújabb Magyar 1 év Garancia Deák Térnél Azonnal Átvehető
- ÉRKEZETT Legújabb Bontatlan Új M2 IPAD PRO 2022 12,9 128GB - 256GB Wi-Fi Azonnal DEÁK TÉRNÉL Átvehe
- Akció Új Bontatlan 2023 iMac 24 M3 Chip 8/10 8GB/256GB SSD Azonnal Deák Térnél Átvehető 1 év garanc
- ÚJ Apple Pencil 1 - 2 első és második generációs BONTATLAN AZONNAL ÁTVEHETŐ DEÁK TÉR
- Apple Watch Series S8 41mm Stairlight ÚJ BONTATLAN Azonnal Átvehető DEÁK TÉRNÉL 1 Év Apple Garanciáv