redefiningtion什么意思

您现在的位置: &&&&&&&&&&&&文章内容
快捷导航:
dbms_redefinition表的重定义
来源:考试大&&&【考试大:中国教育考试第一门户】&&日
  DBMS_REDEFINITION.CAN_REDEF_TABLE检查表是否可以重定义
  其中EXEC DBMS_REDEFINITION.CAN_REDEF_TABLE('CSADMIN', 'XXOLD', DBMS_REDEFINITION.CONS_USE_PK);代表用主键,是默认选项
  EXEC DBMS_REDEFINITION.CAN_REDEF_TABLE('CSADMIN', 'XXNEW', DBMS_REDEFINITION.CONS_USE_rowid);代表用rowid
  用rowid的方式在转换之后会生成一个伪列,查询伪列名称
  select * from user_tab_cols where table_name='OLD'
  然后将伪列drop掉
  alter table old set unused column "SYS_C10:43:01$"
  alter table old drop unused column
  查询unused column 通过:select * from user_unused_col_tabs
  在执行EXEC DBMS_REDEFINITION.START_REDEF_TABLE('CSADMIN', 'XXOLD','XXNEW',2);之后系统会将旧表的数据刷新到新表,同时生成一张名为
  M$LOG_XXOLD的物化视图。此后,对新表的更新都会记录在这个视图里,在执行DBMS_REDEFINITION.sync_interim_table('CSADMIN','XXOLD','XXNEW');
  或者EXEC DBMS_REDEFINITION.finish_redef_table('CSADMIN','XXOLD','XXNEW');后会自动将物化视图的记录更新到新表中。
  sync_interim_table的目的是为了缩短finish时锁定表的时间。在执行finish之后,会自动删除这个物化视图。
  如果中间过程出错要重新定义表的话,先执行 dbms_redefinition.abort_redef_table中断转换,然后要手工删除物化视图和新表再重新定义。
  DROP MATERILIZED VIEW XXNEW;
  DROP TABLE XXNEW;
  DROP MATERILIZED VIEW LOG ON XXOLD;
  交换后,旧表上的index和constraint也会交换到新表,同样新表上的定义也会交换给旧表。所以在finish前要先在新表上做相应的index和constraint,还有表的权限定义
  以下是具体的测试。
  **************************************************************************************
  测试1:不管新表中的内容如何,在start之后都会被刷新成旧表的内容
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& insert into new values ('e',sysdate);
  1 row inserted
  Commit complete
  SQL& exec dbms_redefinition.start_redef_table('csadmin','old','new',null,2);
  PL/SQL procedure successfully completed
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*)
  COUNT(*)
  ----------
  ****************************************************************************************
  测试2:在start之后,对新表的更新会记录在mlog$_old中,执行sync_interim_table时同步到new,同时清空
  mlog$_在finish时也会同步一次,同时删除mlog$_
  SQL& exec dbms_redefinition.start_redef_table('csadmin','old','new',null,2);
  PL/SQL procedure successfully completed
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& insert into old values ('e',sysdate);
  1 row inserted
  Commit complete
  SQL& select count(*) from mlog$_
  COUNT(*)
  ----------
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& exec dbms_redefinition.sync_interim_table('csadmin','old','new');
  PL/SQL procedure successfully completed
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*) from mlog$_
  COUNT(*)
  ----------
  SQL& insert into old values ('f',sysdate);
  1 row inserted
  Commit complete
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*)
  COUNT(*)
来源:考试大-
责编:xxm&&&
&考试大网校:计算机等级考试网络课程试听
暂无跟贴,欢迎您发表意见
考试大Oracle认证考试评论排行
1.&&评论2条
2.&&评论2条
3.&&评论1条
4.&&评论1条
5.&&评论1条
6.&&评论1条
主讲:陈翠娥
12345678910
12345678910输入您的搜索字词
提交搜索表单
您现在的位置:&&>>&&>>&&>>&正文
dbms_redefinition表的重定义
  SQL& select count(*) from mlog$_
  COUNT(*)
  ----------
  SQL& exec dbms_redefinition.finish_redef_table('csadmin','old','new');
  PL/SQL procedure successfully completed
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*)
  COUNT(*)
  ----------
  SQL& select count(*) from mlog$_
  select count(*) from mlog$_old
  ORA-00942: table or view does not exist
  *************************************************************************************
  测试3:用DBMS_REDEFINITION调整列的位置
  SQL& SELECT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME='OLD';
  INDEX_NAME
  ------------------------------
  IDX_USERNAME
  SQL& SELECT CONSTRAINT_NAME FROM USER_CONSTRAINTS WHERE TABLE_NAME='OLD';
  CONSTRAINT_NAME
  ------------------------------
  USERNAME_KEY
  SQL& TRUNCATE TABLE NEW;
  Table truncated
  SQL& DESC OLD;
  Name Type Nullable Default Comments
  -------- ------------ -------- ------- --------
  LSTTIME DATE Y
  USERNAME VARCHAR2(10)
  SQL& DESC NEW
  Name Type Nullable Default Comments
  -------- ------------ -------- ------- --------
  USERNAME VARCHAR2(10) Y
  LSTTIME DATE Y
  SQL& exec dbms_redefinition.start_redef_table('CSADMIN','OLD','NEW','USERNAME USERNAME,LSTTIME LSTTIME',2);
  PL/SQL procedure successfully completed
  SQL& exec dbms_redefinition.finish_redef_table('csadmin','old','new');
  PL/SQL procedure successfully completed
  SQL& DESC OLD;
  Name Type Nullable Default Comments
  -------- ------------ -------- ------- --------
  USERNAME VARCHAR2(10) Y
  LSTTIME DATE Y
  SQL& DESC NEW
  Name Type Nullable Default Comments
  -------- ------------ -------- ------- --------
  LSTTIME DATE Y
  USERNAME VARCHAR2(10)
  SQL& SELECT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME='OLD';
  INDEX_NAME
  ------------------------------
  SQL& SELECT CONSTRAINT_NAME FROM USER_CONSTRAINTS WHERE TABLE_NAME='OLD';
  CONSTRAINT_NAME
  ------------------------------
  SQL& SELECT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME='NEW';
  INDEX_NAME
  ------------------------------
  IDX_USERNAME
  SQL& SELECT CONSTRAINT_NAME FROM USER_CONSTRAINTS WHERE TABLE_NAME='NEW';
  CONSTRAINT_NAME
  ------------------------------
  USERNAME_KEY
  *******************************************************************************
  测试4:转换原表为分区表
  Connected to
Database 10g Enterprise Edition Release 10.2.0.3.0
  Connected as csadmin
  drop table xxnew
  ORA-12083: must use DROP MATERIALIZED VIEW to drop "CSADMIN"."XX_NEW"
  SQL& drop materialized view xx_
  Materialized view dropped
  SQL& drop table xx_
  Table dropped
  SQL& EXEC DBMS_REDEFINITION.CAN_REDEF_TABLE('CSADMIN', 'XXOLD', DBMS_REDEFINITION.cons_use_rowid);
  begin DBMS_REDEFINITION.CAN_REDEF_TABLE('CSADMIN', 'XXOLD', DBMS_REDEFINITION.cons_use_rowid);
  ORA-12091: cannot online redefine table "CSADMIN"."XXOLD" with materialized views
  ORA-06512: at "SYS.DBMS_REDEFINITION", line 137
  ORA-06512: at "SYS.DBMS_REDEFINITION", line 1478
  ORA-06512: at line 2
  SQL& select * from user_mview_logs where master='XXOLD';
  LOG_OWNER MASTER LOG_TABLE LOG_TRIGGER ROWIDS PRIMARY_KEY OBJECT_ID FILTER_COLUMNS SEQUENCE INCLUDE_NEW_VALUES
  ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------ ----------- --------- -------------- -------- ------------------
  CSADMIN XXOLD MLOG$_XXOLD NO YES NO NO NO NO
  SQL& drop materialized view XXOLD;
  ORA-12003: materialized view "CSADMIN"."XXOLD" does not exist
  SQL& drop materialized view LOG ON XXOLD;
  Materialized view log dropped
  SQL& select * from user_mview_logs where master='XXOLD';
  LOG_OWNER MASTER LOG_TABLE LOG_TRIGGER ROWIDS PRIMARY_KEY OBJECT_ID FILTER_COLUMNS SEQUENCE INCLUDE_NEW_VALUES
【责编:coco】
?&[]?&[]?&[]?&[]?&[]?&[]?&[]?&[]?&[]?&[]
相关产品和培训
 友情推荐链接
 认证培训
 专题推荐
 ? ? ? ? ? ? ? ? ? ?
 今日更新
?&?&?&?&?&?&?&?&?&?&
 社区讨论
 博客论点
 频道精选
 Oracle频道相关导航
技术导航:         产品导航 :  |
|  :  |CList&UINT, UINT& lstBasicC
lstBasicCommands.AddTail(ID_FILE_NEW);
lstBasicCommands.AddTail(ID_FILE_OPEN);
lstBasicCommands.AddTail(ID_FILE_SAVE);
lstBasicCommands.AddTail(ID_FILE_PRINT);
lstBasicCommands.AddTail(ID_APP_EXIT);
lstBasicCommands.AddTail(ID_EDIT_CUT);
lstBasicCommands.AddTail(ID_EDIT_PASTE);
lstBasicCommands.AddTail(ID_EDIT_UNDO);
lstBasicCommands.AddTail(ID_APP_ABOUT);
lstBasicCommands.AddTail(ID_VIEW_STATUS_BAR);
lstBasicCommands.AddTail(ID_VIEW_TOOLBAR);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2003);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_VS_2005);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLUE);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_SILVER);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLACK);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_AQUA);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_WINDOWS_7);
CMFCToolBar::SetBasicCommands(lstBasicCommands);
C/C++ code
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
if (CFrameWndEx::OnCreate(lpCreateStruct) == -1)
return -1;
BOOL bNameV
// set the visual manager and style based on persisted value
OnApplicationLook(theApp.m_nAppLook);
if (!m_wndMenuBar.Create(this))
TRACE0("Failed to create menubar\n");
return -1;
// fail to create
m_wndMenuBar.SetPaneStyle(m_wndMenuBar.GetPaneStyle() | CBRS_SIZE_DYNAMIC | CBRS_TOOLTIPS | CBRS_FLYBY);
// prevent the menu bar from taking the focus on activation
CMFCPopupMenu::SetForceMenuFocus(FALSE);
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(theApp.m_bHiColorIcons ? IDR_MAINFRAME_256 : IDR_MAINFRAME))
TRACE0("Failed to create toolbar\n");
return -1;
// fail to create
CString strToolBarN
bNameValid = strToolBarName.LoadString(IDS_TOOLBAR_STANDARD);
ASSERT(bNameValid);
m_wndToolBar.SetWindowText(strToolBarName);
CString strC
bNameValid = strCustomize.LoadString(IDS_TOOLBAR_CUSTOMIZE);
ASSERT(bNameValid);
m_wndToolBar.EnableCustomizeButton(TRUE, ID_VIEW_CUSTOMIZE, strCustomize);
// Allow user-defined toolbars operations:
InitUserToolbars(NULL, uiFirstUserToolBarId, uiLastUserToolBarId);
if (!m_wndStatusBar.Create(this))
TRACE0("Failed to create status bar\n");
return -1;
// fail to create
m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT));
// TODO: Delete these five lines if you don't want the toolbar and menubar to be dockable
m_wndMenuBar.EnableDocking(CBRS_ALIGN_ANY);
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockPane(&m_wndMenuBar);
DockPane(&m_wndToolBar);
// enable Visual Studio 2005 style docking window behavior
CDockingManager::SetDockingMode(DT_SMART);
// enable Visual Studio 2005 style docking window auto-hide behavior
EnableAutoHidePanes(CBRS_ALIGN_ANY);
// Enable toolbar and docking window menu replacement
EnablePaneMenu(TRUE, ID_VIEW_CUSTOMIZE, strCustomize, ID_VIEW_TOOLBAR);
// enable quick (Alt+drag) toolbar customization
CMFCToolBar::EnableQuickCustomization();
if (CMFCToolBar::GetUserImages() == NULL)
// load user-defined toolbar images
if (m_UserImages.Load(_T(".\\UserImages.bmp")))
CMFCToolBar::SetUserImages(&m_UserImages);
// enable menu personalization (most-recently used commands)
// TODO: define your own basic commands, ensuring that each pulldown menu has at least one basic command.
CList&UINT, UINT& lstBasicC
lstBasicCommands.AddTail(ID_FILE_NEW);
lstBasicCommands.AddTail(ID_FILE_OPEN);
lstBasicCommands.AddTail(ID_FILE_SAVE);
lstBasicCommands.AddTail(ID_FILE_PRINT);
lstBasicCommands.AddTail(ID_APP_EXIT);
lstBasicCommands.AddTail(ID_EDIT_CUT);
lstBasicCommands.AddTail(ID_EDIT_PASTE);
lstBasicCommands.AddTail(ID_EDIT_UNDO);
lstBasicCommands.AddTail(ID_APP_ABOUT);
lstBasicCommands.AddTail(ID_VIEW_STATUS_BAR);
lstBasicCommands.AddTail(ID_VIEW_TOOLBAR);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2003);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_VS_2005);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLUE);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_SILVER);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLACK);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_AQUA);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_WINDOWS_7);
CMFCToolBar::SetBasicCommands(lstBasicCommands);
------解决方案--------------------
这不是给工具条加标识吗,你看那些打开、复制、剪切、退出...
MFC程序改 针对210SDK平台疏失
MFC程序改 针对210SDK平台出错在DEBUG下完全OK.切换到MINI210SDK出现以下错误.
1&stdafx.cpp
1&C:\Program Files\Microsoft Visual Studio 8\VC\ce\include\crtdefs.h(98) : warning C4005: '_WIN32_WCE' : macro redefinition
command-line arguments : see previous definition of '_WIN32_WCE'
1&_WIN32_WINDOWS was undefined as it is not supported for Windows CE
1&C:\Program Files\Windows CE Tools\wce600\MiniMFC210\include\ARMV4I\malloc.h(45) : error C2143: syntax error : missing ',' before '*'
1&C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlosapice.h(879) : warning C4996: 'wcsncpy' was declared deprecated
c:\program files\windows ce tools\wce600\minimfc210\include\armv4i\stdlib.h(177) : see declaration of 'wcsncpy'
Message: 'This function or variable may be unsafe. Consider using wcsncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
1&C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlosapice.h(1075) : warning C4996: 'wcsncpy' was declared deprecated
c:\program files\windows ce tools\wce600\minimfc210\include\armv4i\stdlib.h(177) : see declaration of 'wcsncpy'
Message: 'This function or variable may be unsafe. Consider using wcsncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
1&C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlosapice.h(1123) : warning C4996: 'wcsncpy' was declared deprecated
c:\program files\windows ce tools\wce600\minimfc210\include\armv4i\stdlib.h(177) : see declaration of 'wcsncpy'
Message: 'This function or variable may be unsafe. Consider using wcsncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
1&C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atltime.h(402) : error C3861: 'wcsftime': identifier not found
1&C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atltime.h(429) : error C3861: 'wcsftime': identifier not found
1&C:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlcomtime.h(367) : error C3861: 'wcsftime': identifier not found
1&项目 : warning PRJ0018 : 未找到下列环境变量:
1&$(PLATFORMDEFINES)
1&生成日志保存在“file://e:\USER\window\window\MiniMFC210 (ARMV4I)\Release\BuildLog.htm”------解决方案--------------------&_WIN32_WINDOWS was undefined as it is not supported for Windows CE
---------------------------------------------
代码和你使用的平台不一致
myeclipse忽然不提示了类的方法名了
myeclipse突然不提示了类的方法名了在myeclipse下编写servlet代码,写了类之后不提示方法名,导包的时候也出现这种情况,请问怎么回事?------解决方案--------------------
一般默认情况下,Eclipse ,MyEclipse的代码提示功能是比Microsoft Visual Studio的差很多的,主要是Eclipse ,MyEclipse本身有很多选项是默认关闭的,要开发者自己去手动配置。如果开发者不清楚的话,就不知道Eclipse ,MyEclipse的代码提示功能一样能像Microsoft Visual Studio的代码提示功能一样强大。
先举个简单的例子说明问题所在,例如一般默认情况下,在Eclipse ,MyEclipse代码里面,打个foreach,switch等这些,是无法得到代码提示的(不信自己试试),其他的就更不用说了,而在Microsoft Visual Studio里面是得到非常友好的代码提示的。实际上,Eclipse ,MyEclipse代码里面的代码提示功能默认的一般是点“.”,一般是有了点“.”,才会有代码提示。
原理:“Auto Activation triggers for java”这个选项就是指触发代码提示的的选项,把“.”改成“.abcdefghijklmnopqrstuvwxyz(,”的意思,就是指遇到26个字母和.,(这些符号就触发代码提示功能了。具体后面有说,放心)
增强Eclipse ,MyEclipse 6.5 的代码提示功能,具体怎么样来配置?下面开始说步骤(注意本人用的MyEclipse 6.5做讲解,其他的,原理都是一样的):
1. 打开MyEclipse 6.5,然后“window”→“Preferences”。
2. 选择“java”,展开,“Editor”,选择“Content Assist”。
3. 选择“Content Assist”,然后看到右边,右边的“Auto-Activation”下面的“Auto
Activation triggers for java”这个选项。其实就是指触发代码提示的就是“.”这个符号。
4.“Auto Activation triggers for java”这个选项,在“.”后加abc字母,方便后面的查找修改。然后“apply”,点击“OK”。
5. 然后,“File”→“Export”,在弹出的窗口中选择“Perferences”,点击“下一步”。6. 选择导出文件路径,本人导出到桌面,输入“test”作为文件名,点击“保存”。7. 在桌面找到刚在保存的文件“test.epf”,右键选择“用记事本打开”。8. 可以看到很多配置MyEclipse 6.5的信息9. 按“ctrl + F”快捷键,输入“.abc”,点击“查找下一个”。10. 查找到“.abc”的配置信息如下:11. 把“.abc”改成“.abcdefghijklmnopqrstuvwxyz(,”,保存,关闭“test.epf”。12. 回到MyEclipse 6.5 界面,“File”→“Import”,在弹出的窗口中选择“Perferences”,点击“下一步”,选择刚在已经修改的“test.epf”文件,点击“打开”,点击“Finish”。该步骤和上面的导出步骤类似。13. 最后当然是进行代码测试了。随便新建一个工程,新建一个类。在代码输入switch,foreach等进行测试。你立即会发现,果然出了提示,而且无论是敲哪个字母都会有很多相关的提示了,很流畅,很方便。
总结:“Auto Activation triggers for java”这个选项就是指触发代码提示的的选项,把“.”改成“.abcdefghijklmnopqrstuvwxyz(,”的意思,就是指遇到26个字母和.,(这些符号就触发代码提示功能了。)当然了,“.abcdefghijklmnopqrstuvwxyz(,”这里也可以添加大写字母和一些其他符号,具体的,自己根据需要自己设置和调整。这个Auto activation delay是设置触发代码提示的延迟时间的。200是指200ms,是默认值,自己也可以根据需要设置。
顺便说一下,修改类名,接口名等以不同颜色高亮的,可以这样配置在“java”→“editor”→“syntac”,右边展开“java”→“classes”,勾上“Enable”这个选项,选择自己喜欢的颜色即可。当然还有其他相关的颜色配置。
如果您想提高自己的技术水平,欢迎加入本站官方1号QQ群:&&,&&2号QQ群:,在群里结识技术精英和交流技术^_^
本站联系邮箱:redefinition of formal parameter,参数重定义什么意思啊~请教
[问题点数:20分,结帖人solopointer]
redefinition of formal parameter,参数重定义什么意思啊~请教
[问题点数:20分,结帖人solopointer]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
2007年9月 C/C++大版内专家分月排行榜第三2007年8月 C/C++大版内专家分月排行榜第三2006年11月 C/C++大版内专家分月排行榜第三
2007年9月 C/C++大版内专家分月排行榜第三2007年8月 C/C++大版内专家分月排行榜第三2006年11月 C/C++大版内专家分月排行榜第三
2007年9月 C/C++大版内专家分月排行榜第三2007年8月 C/C++大版内专家分月排行榜第三2006年11月 C/C++大版内专家分月排行榜第三
2007年9月 C/C++大版内专家分月排行榜第三2007年8月 C/C++大版内专家分月排行榜第三2006年11月 C/C++大版内专家分月排行榜第三
2007年9月 C/C++大版内专家分月排行榜第三2007年8月 C/C++大版内专家分月排行榜第三2006年11月 C/C++大版内专家分月排行榜第三
2013年6月 Linux/Unix社区大版内专家分月排行榜第二2013年5月 Linux/Unix社区大版内专家分月排行榜第二2013年3月 Linux/Unix社区大版内专家分月排行榜第二2013年1月 Linux/Unix社区大版内专家分月排行榜第二2012年12月 Linux/Unix社区大版内专家分月排行榜第二2012年8月 Linux/Unix社区大版内专家分月排行榜第二2011年12月 Linux/Unix社区大版内专家分月排行榜第二2011年10月 C/C++大版内专家分月排行榜第二2011年10月 Linux/Unix社区大版内专家分月排行榜第二
2012年6月 C/C++大版内专家分月排行榜第三2012年6月 PHP大版内专家分月排行榜第三2012年5月 C/C++大版内专家分月排行榜第三2012年3月 Linux/Unix社区大版内专家分月排行榜第三2012年2月 Linux/Unix社区大版内专家分月排行榜第三2011年11月 C/C++大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 redefining 的文章

 

随机推荐