當它是最好有一個私有數據成員(_val
在class B
),當它最好是有val
作爲模板參數(class A
)?爲什麼使用常量表達式作爲模板參數?
#include<iostream>
using namespace std;
template<int val>
class A{
public:
A(){ cout << val << endl;}
};
class B{
public:
B(int val) : _val(val) { cout << val << endl;}
private:
int _val;
};
int main()
{
A<7> a;
B b(8);
}
你想在運行時更改值?然後你在那裏得到你的答案。 –
@chuck編號模板是一個編譯時構造。 – Rapptz
@chuck,如何創建對象'甲<7> A'後改變從7'val'至8? – cpp