Я новичок в С++ CLI из неуправляемого мира С++.
Я получаю эту ошибку:
candidate function(s) not accessible
когда я передаю std::string как часть аргумента метода.
Здесь точный код:
Lib Project (скомпилирован как проект .dll)
//Lib.h
#pragma once
public ref class Lib
{
public:
Lib(void);
public:
void Extract( std::string& data_ );
};
//Lib.cpp
#include "Lib.h"
Lib::Lib(void)
{
}
void Lib::Extract( std::string& data_ )
{
data_.empty();
}
Проект LibTest (скомпилирован как application.exe)
//LibTest.h
#pragma once
ref class LibTest
{
public:
LibTest(void);
};
//LibTest.cpp
#include "LibTest.h"
LibTest::LibTest(void)
{
Lib^ lib = gcnew Lib;
lib->Extract( std::string("test") );
}
int main()
{
return 0;
}
Ошибка компилятора:
1>------ Build started: Project: LibTest, Configuration: Debug Win32 ------
1>Compiling...
1>LibTest.cpp
1>.\LibTest.cpp(7) : error C3767: 'Lib::Extract': candidate function(s) not accessible