uBlas: compiler error (Borland 2007)
Hi folks,
I'm trying my luck with the Boost.uBlas library, but I'm running into
problems. This little snippet:
#include
Hendrik Fuß wrote:
should compile alright, shouldn't it?
Yes, it should compile.
The compiler says:
[BCC32 Error] matrix.hpp(2671): E2247 'identity_matrix
::one_' is not accessible
I have no idea what the compiler wants to tell me here. Does it means that the nested class is not allowed to access this private member? I also have no ideas about the access rules to private members for nested classes. A simple fix would be to replace "one_" with "1" in the places where the compiler complains, but...
The same happens if I use the assignment operator instead of copy construction. Can anyone help me?
There is a special mailing list for ublas, where you are more likely to get help. Regards, Thomas
Thomas Klimpel schrieb:
The compiler says:
[BCC32 Error] matrix.hpp(2671): E2247 'identity_matrix
::one_' is not accessible I have no idea what the compiler wants to tell me here. Does it means that the nested class is not allowed to access this private member? I also have no ideas about the access rules to private members for nested classes.
Apparently this the way nested classes are handled in Borland C++ 2007. Unless you declare nested classes friends they cannot access the containing class's private or protected members. I have noticed that Borland C++ is not in the list of supported compilers. However, I've found that the uBlas library in Boost 1.32 works for me if I add #define BOOST_UBLAS_NO_PROXY_SHORTCUTS before I include ublas. I haven't done extensive testing, though. Hope I'll get rid of Borland C++ sooner or later, anyway.
There is a special mailing list for ublas, where you are more likely to get help.
The Boost docs said so, but I was unable to find it on http://lists.boost.org. Oops... er... I see it's there now... must have been hiding the other day. ;-) thanks for your help Hendrik
participants (2)
-
Hendrik Fuß
-
Thomas Klimpel