de.comp.lang.iso-c++
  Home FAQ Contact Sign in
de.comp.lang.iso-c++ only
 
Advanced search
January 2007
motuwethfrsasuw
1234567 1
891011121314 2
15161718192021 3
22232425262728 4
293031     5
2007
 Jan   Feb   Mar   Apr 
 May   Jun   Jul   Aug 
 Sep   Oct   Nov   Dec 
2007 2006    
total
de.comp.lang.iso-c++ Profile…
RELATED GROUPS

POPULAR GROUPS

more...

 Up
  Einlesen von Aufzählungstypen         


Author: Alex
Date: Jan 16, 2007 07:47

Hallo zusammen,

ich habe folgendes Problem:

Ich möchte einen von mir definierten Aufzählungstyp entweder von der
Standardeingabe oder aus einer externen Datei einlesen. Leider funktioniert
das nicht ohne weiteres. Unten habe ich das Problem kurz dargestellt.

#include
#include
#include

using namespace std;

enum TYP { eins, zwei, drei};

int main()
{
    string input("datIn");
    ifstream IN(input.c_str());
    TYP t;

    cin >> t;  // Fehlermeldung

    return 0;
}
Show full article (0.72Kb)
2 Comments
  Richtiger Header: <math.h> oder <cmath>         


Author: Matthias Matker
Date: Jan 15, 2007 08:14

Hallo zusammen,

was ist nach C++-Standard die richtige Header-Datei?

#include

oder

#include

Danke
no comments
  C++ sleep(unsigned int seconds)         


Author: Moritz Ulrich
Date: Jan 12, 2007 18:42

Hallo,

Ich komm direkt zur Sache weil es schon relativ spät ist:

Gibt es in C++ eine Funktion wie sleep() aus unistd.h welche X
Millisekunden wartet?
Hier in meinem Linuxsystem erwartet die Funktion nämlich Sekunden, ich
brauche allerdings eine welche Millisekunden warten kann.

Also z.B.
int sleep(unsigned int msec);

Und bitte keine Win-Api Funktionen, ich sitze an einem Linuxsystem und hab
vor daran zu bleiben.

MfG
Moritz Ulrich
5 Comments
  Buchempfehlung zur C++-Nutzung gesucht         


Author: Jürgen Herz
Date: Jan 12, 2007 03:27

Hallo,

mit den Features der Sprache C++, d.h. wie Klassen deklariert werden, was
Zugriffschutz ist, wie eine Ableitung funktioniert und was Polymorphismus
ist usw. kenne ich mich mittlerweile aus. Allerdings fehlt mir das
Wissen/Verständnis wann was warum in der Praxis einzusetzen ist.

Also vielleicht etwas mehr Gewicht auf Konzepte als auf die Sprache, aber
bitte doch anhand von C++.

Vielleicht hat der eine oder andere von euch in dieser Hinsicht eine
Empfehlung für mich.

Grüße,
Jürgen
22 Comments
  Wert von non-type-template-parametern         


Author: norbert.riedlin
Date: Jan 12, 2007 03:25

Hallo zusammen,

ich habe das folgende Problem: ich habe eine template-Funktion mit
non-type Parameter:

template
void f();

Jetz möchte ich das template für bestimmte N explizit spezialisieren:
template<>
void f<0>() {}

template<>
void f<42>() {}

// etc
Show full article (0.97Kb)
2 Comments
  Re: "standard-Zuweisungsoperator kann nicht benutzt werden"         


Author: Heinz Saathoff
Date: Jan 12, 2007 01:08

Moin,

Torsten Robitzki schrieb...
> Der vom Compiler erzeugte Zuweisungsoperator der Elemente funktioniert
> nicht, da die Referenzen nicht zugewiesen werden können. Entweder Du
> schwenkst auf Zeiger um, oder definierst den Zuweisungsoperator selber.

Könnte man überhaupt eine Rferenz 'verbiegen'? Also so etwas:

#include
using namespace std;

struct FOO {
FOO(int &val) : x(val) {}
FOO &operator=(const FOO &rhs) {
// ??? x=rhs.x, aber nicht als Value
return *this;
}
void Set(int val) {x=val;}
int &x;
};

int i=1, j=2;
Show full article (0.91Kb)
10 Comments
  Re: "standard-Zuweisungsoperator kann nicht benutzt werden"         


Author: Boris Glawe
Date: Jan 11, 2007 15:07

>
> Der vom Compiler erzeugte Zuweisungsoperator der Elemente funktioniert
> nicht, da die Referenzen nicht zugewiesen werden können. Entweder Du
> schwenkst auf Zeiger um, oder definierst den Zuweisungsoperator selber.
>

Ok, erst einmal an alle, die mir auch diese Antwort gegeben haben:
Vielen Dank!

Warum aber hat der Compiler ein Problem damit, eine Referenz zu
kopieren? Die Referenz in dem neu erzeugten Objekt soll einfach auf das
gleiche Objekt verweisen, wie auch in der Klasse von der kopiert wurde!?
Ich kann doch sonst auch jederzeit etwas schreiben wie

string x = "hallo";
string& x_ref1 = x;
string& x_ref2 = x_ref1;

!??

Viele Grüße Boris
2 Comments
  Lokale Klasse in Funktions-Template         


Author: Alexander Müller
Date: Jan 11, 2007 14:07

Hallo!
Anscheinend (eigentlich ja nichts neues) gibt es in Visual C++ 6 hier einen
Bug:

template
void Test(A a1)
{
class T
{
T() {}

A a2;
};
};

Im Hauptprogramm rufe ich z.B. Test(5) auf.
Bei diesem Code erhalte ich einen Internen Compiler-Fehler (1001, msc1.cpp
Zeile 1794).
(Wenn ich den Konstruktor weglasse, dann compiliert er anstandslos.)

Daher habe ich eine globale Template-Klasse für T eingeführt (für jedes
Funktionstemplate
brauche ich eine passende Klasse).
Show full article (0.72Kb)
2 Comments
  Re: Löschen von Objekten         


Author: Stefan Reuther
Date: Jan 5, 2007 05:33

Jürgen Herz wrote:
> int& func()
> {
> int z = 17;
> return z;
> }
> und
> int mz = func();
> bzw.
> int& mz = func();
>
> In ersterem Fall enthält aber mz immerhin 17, in letzterem Blödsinn.
> In Perl wird ein out-of-scope-Objekt erst gelöscht wenn es keine Referenz
> mehr darauf gibt. In C++ dürfte es anders sein (ja/nein?),

Ja, in Perl werden effektiv alle Objekte über das Äquivalent eines
boost::scoped_ptr verwaltet.
> also auch verständlich wenn die Sache schiefgeht.
> Ist es dann nur Zufall bzw. compilerabhängig wenn mz im ersten Fall den
> korrekten Wert enthält?
Show full article (1.58Kb)
no comments
  Re: Löschen von Objekten         


Author: Bernhard Berger
Date: Jan 5, 2007 05:33

Moin
> [zitierter Text ausgeblendet]
>
> int& func()
> {
> int z = 17;
> return z;
>> [zitierter Text ausgeblendet]
>
> und
> int mz = func();
> bzw.
> int& mz = func();
>
> meckert gcc in beiden Fällen zwar "warning: reference to local variable `z'
> returned".
Sollte mich auch wundern, wenn er es einmal nicht tut ;-)
> In ersterem Fall enthält aber mz immerhin 17, in letzterem Blödsinn.
> In Perl wird ein out-of-scope-Objekt erst gelöscht wenn es keine Referenz
> mehr darauf gibt. In C++ dürfte es anders sein (ja/nein...
Show full article (1.63Kb)
1 Comment
 
1 2 3 4 5 6 7 8