ptolemy2.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 69 行

C
69
字号
// GROUPS passed ptolemy-bugs#include <iostream>class PTcl {public:	int dispatcher(int which,int argc,char** argv);	// fns in the table	int one(int argc, char** argv);	int two(int argc, char** argv);	int three(int argc, char** argv);};// An InterpFuncP is a pointer to an PTcl function that takes an argc-argv// argument list and returns TCL_OK or TCL_ERROR.typedef int (PTcl::*InterpFuncP)(int,char**);struct InterpTableEntry {	char* name;	InterpFuncP func;};// Here is the function table and dispatcher function.// These macros define entries for the table#define quote(x) #x#define ENTRY(verb) { quote(verb), &PTcl::verb }static InterpTableEntry funcTable[] = {	ENTRY(one),	ENTRY(two),	ENTRY(three),	{0, 0}};int PTcl::dispatcher(int which, int argc, char** argv) {	return (this->*(funcTable[which].func))(argc, argv);}void printargs(char** argv) {//	while (*argv) {//		cout << " " << *argv++;//	}//	cout << "\n";}int PTcl::one(int, char** argv) {  std::cout << "FAIL\n";	printargs(argv);	return 1;}int PTcl::two(int, char** argv) {  std::cout << "PASS\n";	printargs(argv);	return 0;}int PTcl::three(int, char** argv) {  std::cout << "FAIL\n";	printargs(argv);	return 1;}int main (int argc, char** argv) {	PTcl obj;	return obj.dispatcher(1,argc,argv);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?