如何测试c ++方法是否在clang中是const限定的?
例如::
class Inner{
public:
int i;
Inner();
float inner_method() const;
};
Run Code Online (Sandbox Code Playgroud)
我正在使用clang-c库,我尝试clang_isConstQualifiedType在inner_method节点上使用.但是这会返回false.
我不介意答案是否使用clang c ++标头.
我在创建命名共享内存并检查其大小时遇到麻烦。当我在这样的函数中调用函数GetFileSizeEx时,该函数将失败。关于如何调试的任何想法?
void test_getsize(const char* lpName, int size){
HANDLE handle = CreateFileMapping(
INVALID_HANDLE_VALUE, // use paging file
NULL, // default security
PAGE_READWRITE, // read/write access
0, // maximum object size (high-order DWORD)
size, // maximum object size (low-order DWORD)
lpName); // name of mapping object
if (handle== NULL || handle== INVALID_HANDLE_VALUE){
last_error = get_error_from_errorno();
*error_return =1;
}
LARGE_INTEGER new_size;
err = GetFileSizeEx(handle, &new_size);
if (err==0){ printf("err ");} else {printf("pass ");}
printf("size=%lu\n", (unsigned long)new_size.QuadPart);
}
Run Code Online (Sandbox Code Playgroud)