Problème de compilation

Bonjour
Je démarre en C++,j'ai fait bien d'autres langage mais pas celui là et donc j'ai un petit souci:
je suis en train de scinder mon fichier main en 3 ceci afin de l'alléger

un fichier main

#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
#include <DNSServer.h>
#include <stdio.h>

#include "html.h"

#ifndef STASSID
#define STASSID "**********"
#define STAPSK  "**********"
#endif

const char* ssid     = STASSID;
const char* password = STAPSK;

ESP8266WebServer server;            // on instance un serveur web nommé serveur accessible sur le port 80
MDNSResponder mdns;                     // on instance la fonction mdns
IPAddress apIP(192, 168, 1, 1);
DNSServer dnsServer;
const byte DNS_PORT = 80;

long t;
int frequence = 0;
float rampe = 0;

void handleRoot() 
  {
  if ( server.hasArg("frequence") ) {
    frequence = server.arg("frequence").toInt();
    rampe   = server.arg("rampe").toFloat();
    }

  form ( server, frequence , rampe );
  
}
.......

un fichier .h

#ifndef HTML_H
#define HTML_H

#include <string>
#include <ESP8266WebServer.h>
using namespace std;

void form (ESP8266WebServer server, int frequence , float rampe );

#endif

un fichier .cpp

#include <ESP8266WebServer.h>
#include <string>
using namespace std;

#include "html.h"
 
void form (ESP8266WebServer server, int frequence , float rampe )
{
 String html_1 = "";

/******/
 
  String html_2 = "";

/*****/
 
  String html_3 = "";

/*****/

  String formulaire ;
  formulaire = html_1 + String(frequence) + html_2  + String(rampe) + html_3 ;
  server.send(200, "text/html", formulaire);

  return ;
}

mais voilà lorsque je compile j'ai l'erreur suivante:

html.h:9:6: error: initializing argument 1 of 'void form(ESP8266WebServer, int, float)'

void form (ESP8266WebServer server, int frequence , float rampe );

^

Utilisation de la bibliothèque ESP8266WiFi version 1.0 dans le dossier: C:\Users\maith\OneDrive\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.6.3\libraries\ESP8266WiFi
Utilisation de la bibliothèque ESP8266WebServer version 1.0 dans le dossier: C:\Users\maith\OneDrive\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.6.3\libraries\ESP8266WebServer
Utilisation de la bibliothèque ESP8266mDNS version 1.2 dans le dossier: C:\Users\maith\OneDrive\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.6.3\libraries\ESP8266mDNS
Utilisation de la bibliothèque DNSServer version 1.1.1 dans le dossier: C:\Users\maith\OneDrive\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.6.3\libraries\DNSServer
exit status 1
use of deleted function 'esp8266webserver::ESP8266WebServerTemplate::ESP8266WebServerTemplate(const esp8266webserver::ESP8266WebServerTemplate&)'

J'ai besoin d'un petit coups de main car là je galère depuis un moment.
Merci

Passez le serveur par référence

void form (ESP8266WebServer[b][color=red]&[/color][/b] server, int frequence , float rampe );

sinon voici un petit exemple qui fonctionne bien

le fichier demo.ino

#include "html.h"

void setup() {
  Serial.begin(115200);
  coucou("Hello depuis le setup");
}

void loop() {}

le fichier html.h

#ifndef HTML_H
#define HTML_H
#include <Arduino.h>

void coucou(const char* message);

#endif

le fichier html.cpp

#include "html.h"

void coucou(const char* message)
{
  Serial.println(message);
}

Bonjour
Ok merci je suis dépanné jusqu'à la prochaine fois.

yakafautcon:
Jusqu'à la prochaine fois.

LOL :slight_smile:
bonne continuation !