0
爲什麼下面的代碼中的賦值無法編譯?爲什麼這個易失性指針convserion無效
struct foo
{
int* m_NormalIntPointer;
int* volatile m_IntPointerModifiedByManyThreads;
void func()
{
//compiles fine
void* pointerToNormalPointer = &m_NormalIntPointer;
//does not compile
void* volatile* pointerToPointerModifiedByManyThreads = &m_IntPointerModifiedByManyThreads;
}
};
如果m_IntPointerModifiedByManyThreads是一個指向一個int,並且該指針可以通過其它線程進行修改,並且「空隙*揮發性*」是一個指針,它指向可以通過其它線程被修改的指針,爲什麼用任務需要演員,其中非易失版本不?
揮發性預選賽無關,跟線程,除非你使用Visual Studio – Cubbi
@Cubbi的非標準擴展:或者使用IA64。 –