Hallo,
ich habe eine Frage zur friendfunktion. Ich habe zum testen, folgenden Code geschrieben:

_____________"car.h"__________________
Code:
#ifndef CAR_H_
#define CAR_H_
#include <iostream>
using namespace std;

class car {
public:
    friend car* create();
    void print();

private:
    car();
};

car::car(){
}

void car::print(){
    cout<<"I'm a car"<<endl;
}

#endif /* CAR_H_ */
_____________"haendler.h"______________
Code:
#ifndef HAENDLER_H_
#define HAENDLER_H_
#include <iostream>
#include "car.h"

class haendler {
public:
    car* create();

private:
};

car* haendler::create(){
    car* temp = new car();
    return temp;
}

#endif /* HAENDLER_H_ */
wenn ich jetzt versuche mit der Methode create() ein "car" zu erstellen, dann meckert der Compiler, dass der Konstruktor von car private ist. Aber jetzt müsste doch haendler Zugang zu allen privaten Methoden haben?

Wieso funktioniert das nicht?

Vielen Dank
Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!