Re: 問一個 C++ template 語法問題
看板C_and_CPP (C/C++)作者ADF (............ NN)時間16年前 (2009/04/15 02:37)推噓2(2推 0噓 2→)留言4則, 1人參與討論串2/2 (看更多)
#include <iostream>
using namespace std;
//template function 無法偏特化用template class
template<class R , class Node>
struct Action{ };
template< class Node >
struct Action< int , Node >
{
Action(Node& node)
{
cout << "int" << endl;
node.count++;
}
};
// abstract node
struct abs_node {
virtual void f () = 0 ; // semantic action
} ;
// 根據每個 parsing rule 繼承的 node
template < class R > //
struct node : abs_node
{ // 為了要處理node,
int count;
void f () { Action<R , node > act(*this); } // 要把node自己傳進去!
} ;
int main()
{
node<int> int_node;
int_node.count = 0;
int_node.f();
cout << int_node.count << endl;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.194.173
推
04/15 03:25, , 1F
04/15 03:25, 1F
→
04/15 03:26, , 2F
04/15 03:26, 2F
→
04/15 03:26, , 3F
04/15 03:26, 3F
推
04/15 03:28, , 4F
04/15 03:28, 4F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章