Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » memset kann nicht gefunden werden?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
20.01.2009, 11:21 Uhr
~Fragender3
Gast


Hallo,

ich kompiliere einen code bei dem die folgende fehlermeldung kommt:

C++:
there are no arguments to ‘memset’ that depend on a template parameter,    



. Ich kompiliere mit g++ 4.1.2 (gcc) unter Linux. Das Makefile muss stimmen weil ich auf einer anderen Maschine den code problemlos compilieren kann. Warum aber auf dieser nicht? Woran könnte das liegen?

Danke
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.01.2009, 11:49 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hi,

ohne Codestelle wissen wir nicht was da genau falsch läuft
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
20.01.2009, 11:51 Uhr
~fragender3
Gast


hmm ok..später sagt er auch noch

C++:
‘sort’ is not a member of ‘std’



ich versuch mich mal an einem beispiel was aber wohl sehr lange dauern dürfte....
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
20.01.2009, 11:53 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja du müsstest doch eine codezeile haben wo das auftritt?

Ansonsten würd ich ma tippen du hast stdio.h (C-Header) eingebunden, statt cstdio (C++-Header) o.ä
--
class God : public ChuckNorris { };

Dieser Post wurde am 20.01.2009 um 11:53 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.01.2009, 12:38 Uhr
~Fragender3
Gast



C++:
//Konstruktor bedindet sich in MyClass.imp

template <class T>
MyClass<T>::MyClass(int nbr)
{
memset(l, 0, nbr * sizeof(int));
}

//wobei die Klasse in MyClass.h so aussieht:

#include <iostream>

template <class T>
class MyClass
{
   public:
      MyClass(int nbr)
};

#include "MyClass.imp"


 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
20.01.2009, 12:40 Uhr
~Fragender3
Gast


Ich habe immer mit <stdio.h> eingebunden und kompiliere mit g++ . Ist also C++ code.
Muss ich da stattdessen mit <cstdio.h> einbinden?
Seltsam ist dass es auf anderen systemen läuft...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
20.01.2009, 12:50 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Was ist denn l?
Ist das als T l definiert?

Dann versuch mal das als void* zu casten wenn du es memset übergibst. Ist aber nur ein Schuss ins Blaue...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
20.01.2009, 12:59 Uhr
~Fragender3
Gast


Nein ist kein template - ist ein int l.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
20.01.2009, 17:29 Uhr
FloSoft
Medialer Over-Flow
(Administrator)



Zitat:

Muss ich da stattdessen mit <cstdio.h> einbinden?



nur <cstdio>. der andere ist der C-Header, welcher dir unter Umständen probleme erzeugen kann, z.b bzgl "max" und "min", da die häufig in C noch makros sind.

Ansonsten sollte man memset unter C++ nur bedingt einsetzen, memset zerstört ggf Strukturen, die von Konstruktoren erzeugt worden sind!

Wo ist "l" denn definiert?
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
20.01.2009, 19:53 Uhr
0xdeadbeef
Gott
(Operator)


std::memset befindet sich in <cstring>, std::sort befindet sich in <algorithm>.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: