Je reçois le message d'erreur ci-dessus (que j'ai googlé et trouvé est quelque chose à voir avec une attelle bouclée manquante ou quelque chose), cependant, je ne peux pas voir où se trouve ce support manquant?
#include "stdafx.h"
#include <Windows.h>
#include <iostream>
using namespace std;
class Something{
static DWORD WINAPI thread_func(LPVOID lpParameter)
{
thread_data *td = (thread_data*)lpParameter;
cout << "thread with id = " << td->m_id << endl;
return 0;
}
int main()
{
for (int i=0; i< 10; i++)
{
CreateThread(NULL, 0, thread_func, new thread_data(i) , 0, 0);
}
int a;
cin >> a;
}
struct thread_data
{
int m_id;
thread_data(int id) : m_id(id) {}
};
}
4 Réponses :
en C ++, le mot-clé code> Classe code> nécessite un point-virgule après la brace de fermeture:
class Something {
}; // <-- This semicolon character is missing in your code sample.
Merci pour ça! Il dit maintenant "Erreur fatale LNK1120: 1 external non résolue" Je suis désolé, je suis un développeur Java!
@ user1107474 Cela signifie que le compilateur pourrait trouver la déclaration fournie dans le fichier d'en-tête (* .h) mais liée n'a pas pu trouver la définition. Déclaration - Int Nombre (); Code> <--- Vous avez cela quelque part mais manquant Définition - int comptage () {retour 5; } code>
Vous avez besoin d'un point-virgule (; code>) après la corpaison de fermeture (} code>) de la classe quelque chose code> Définition p>
Merci, ne supposez pas que vous connaissez le problème de la liaison, je reçois maintenant?
Êtes-vous reliez contre les bibliothèques Winapi?
Votre classe quelque chose code> doit avoir un point-virgule de terminaison. class Something{
}; // missing
Vous avez peut-être manqué
#ifdef ROCKSTAR #endif <--- this might be missing
Juste curieux, pourquoi
principal code> enveloppé dans une classe?A obtenu l'exemple d'ici: Stackoverflow.com/questions/4768294/MULTHReading-in-c
Je pensais qu'il devait être enveloppé dans une classe?