와 구조체의 배열은 좀 코드가 있습니다.컴파일러 오류 초기화 표준 : 그 소리
그 코드는 나에게이 오류 준다 그러나 :
std::array<JNINativeMethod, 26> methods = {{
{ "nativeCreate", "(Ljava/lang/String;)J", reinterpret_cast<void*>(&nativeCreate) },
{ "nativeDestroy", "(J)V", reinterpret_cast<void*>(&nativeDestroy) },
...
{ "nativeToggleDebug", "(J)V", reinterpret_cast<void*>(&nativeToggleDebug) }}
}};
이 나에게 이상한 것 같지만 Visual C++에 대한이 토론을 찾은 후 : http://social.msdn.microsoft.com/forums/vstudio/en-US/e5ad8fa5-c9e8-4328-a7fa-af7a47ce2492/initialising-a-stdarray-of-structs을 내가 괄호의 또 다른 세트를 추가하지 않는 한
jni/JNI.cpp:252:9: error: excess elements in struct initializer
{ "nativeDestroy", "(J)V", reinterpret_cast<void*>(&nativeDestroy) },
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
을
이것이 잘못된 C++ 11 구문인지 또는 clang 3.4의 결함인지 알고 싶습니다.
는 그것이 Initializing simple structs using initializer lists with clang
아를 명확히합니다. 그것은 C++의 감독이었던 것 같습니다. 재미있는 그들은 이미 다음 버전에서 시작됩니다. – ljbade