我想根據類模板類型對齊我的成員變量,但我不確定它是否實際可行。通過模板類型對齊成員變量
下面是一個的想什麼,我做
template<int Align>
class MyClass
{
private:
struct MyStruct
{
// Some stuff
} __declspec(align(Align));
__declspec(align(Align)) int myAlignedVariable;
};
所以我想爲對齊是每個實例變量,只有通過這是非常簡單的例子班級內容的排列值決定。
不幸的是,我總是碰到下面的錯誤
error C2975: 'test::MyClass' : invalid template argument for 'Align', expected compile-time constant expression
那麼,這實際上可能或可以排列只能用一個固定的編譯時間常數可能嗎?如果沒有,任何人都可以想辦法解決這個問題嗎?
謝謝:)
爲什麼不讓他「對齊」MyStruct的第一個成員?那麼它仍然是莢。 – 2008-12-23 21:50:16