rhrhhrhahahahhahahahhhhhhhhhhhhhhhaaaaaaaaaaaaaaaaaaaaa !!!
Est ce que quelqu'un saurait me dire pourquoi le comportement est différent selon que __WORKAROUND__ est défini ou pas ?
(avec __WORKAROUND__ ça compile, sans, c'est l'erreur qui suit le code)
#if !defined(AFX_DRIVERMANAGER_H__1B88321E_CFE9_42B3_9178_C3A4FEACA729__INCLUDED_)
#define AFX_DRIVERMANAGER_H__1B88321E_CFE9_42B3_9178_C3A4FEACA729__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <string>
//#define __WORKAROUND__
namespace SQLManager
{
#ifndef __WORKAROUND__
using namespace std ;
#endif
class Connection ;
class DriverManager
{
public:
virtual ~DriverManager() ;
#ifndef __WORKAROUND__
virtual Connection* getConnection( const string& url, const string& user, const string& password ) const = 0 ;
#else
virtual Connection* getConnection( const std::string& url, const std::string& user, const std::string& password ) const = 0 ;
#endif
} ;
}
#endif // !defined(AFX_DRIVERMANAGER_H__1B88321E_CFE9_42B3_9178_C3A4FEACA729__INCLUDED_)
Résultat de la compilation quand __WORKAROUND__ n'est pas défini :
PQ_DriverManager.cpp
c:\3dsmax6\maxsdk\samples\bddmanager\drivermanager.h(30) : error C2143: syntax error : missing ',' before '&'
c:\3dsmax6\maxsdk\samples\bddmanager\drivermanager.h(30) : error C2059: syntax error : '&'
La ligne 30 est celle là :
virtual Connection* getConnection( const string& url, const string& user, const string& password ) const = 0 ;