⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lib-mfc.lnt

📁 PClint,一个非常严格的C/C++编译器, 可以嵌入到VC.GCC等.它甚至能够检查出你C/C++代码中的内层泄漏问题,变量未初始化问题,不安全的使用指针等...微软公司把它作为代码检查工具,只有
💻 LNT
字号:

//  lib-mfc.lnt
//  Library Options File for the Microsoft Foundation Class library
//
//  Other options useful for MFC have been placed in the
//  compiler options files for the Microsoft C compiler (co-msc.lnt).
//

-elib(570)      // loss of sign in afxdisp.h
-elib(579)      // bad type preceding ,... in afxdisp.h
-elib(648)      // overflow in arithmetic operation in moniker.h
-elib(659)      // nothing follows '}' in variant.h
-elib(723)      // suspicious use of '=' in defining PURE
-elib(726)      // Extraneous comma
-elib(763)      // Repeated declarations
-elib(773)      // #define NAME (SHORT)-2 causes problems
-elib(1411)     // hiding a virtual function with a different signature
-elib(1509)     // base class not virtual
-elib(1516)     // Data member hiding inherited member
-elib(1725)     // class member is a reference
-elib(1727)     // inline function not previously defined inline

-esym(767,AFXAPP_DATA)  // macro may be defined differently
-esym(1511,*::On*)      // Message handlers typically begin with 'On'
			// and they are not virtual and they hide other
			// identically named members in base classes
-esym(534,wsprintf*,*::On*)   // functions whose return
			// values are ignored, add to this as needed ...
-esym(534,AfxMessageBox)   // like this
-esym(534,CArchive::operator<<,CArchive::operator>>)  // and these ...
-esym(534, CObList::AddTail, CDC::MoveTo, CDC::LineTo )
-esym(534, CWnd::SetCapture, ReleaseCapture )

-esym(767,lstrcpyn,FindResource)  // UNICODE redefines some macros
-esym(1512,CThreadLocalObject)  // destructor is not virtual
-esym(1512,CProcessLocalObject)  // destructor is not virtual

-emacro(785,IMPLEMENT_*)          // not enough initializers
-emacro(1502,IMPLEMENT_*)         // object w/o data members
-emacro(522,IMPLEMENT_*)          // expect void, assignment, etc.
-emacro(1773,IMPLEMENT_*)         // casting away const
-emacro(1516,DECLARE_*)           // member hides inherited member
-emacro(415,_AFX_FP_SEG)          // access of out-of-bounds pointer
-emacro(651,ON_EVENT)             // does not fully brace initializer items
-emacro(648,ON_NOTIFY)            // unusual arithmetic in this macro

-lobbase(stdafx.lob)              // use stdafx.lob as base for later lobs

-e641         // converting enums to ints seems to be standard practice
-e655         // bit-wise operations on enums also is standard practice
-e1511        // members hiding members (also standard practice)
-e1736        // redundant access specifiers in generated code
-e1923        // cites when #define's can be converted to const declarations
	      // unfortunately resource.h has many of these.  Alternatively,
	      // make resource.h a library file (+libh) and use -elib(1923)

-d__SW_BM         // Watcom requires the multithread flag be set for MFC
-d__SW_ML         // Watcom requires large model for MFC
-function( operator new(r) )  // operator new never returns NULL.
-function( operator new[](r) ) // operator new[] never returns NULL.
--unew    // keep new from becoming #define'd.  It's defined to be
	  // DEBUG_NEW which is defined to be new(arg,arg) which is OK for
	  // regular new's but array new's come to grief.  This is because
	  // there is no declaration given for operator new[](arg,arg,arg).
-function( operator delete, CObject::operator delete )
-function( operator delete[], CObject::operator delete[] )

+dASSERT=__assert    // lock in the define of ASSERT to be the builtin function
-esym(1055,__assert) // the built-in is undeclared
-esym(526,__assert)  // and not defined either.
-esym(516,__assert)  // arguments may vary.
-esym(534,__assert)  // the return value is ignored
-esym(628,__assert)  // and no argument information given
-esym(746,__assert)  // and no formal prototype provided
		     // otherwise __assert() is an 'ideal' assert function.

// the following are required for .dll processing
-efunc(571,_tcsnextc)  // suspicious cast
-efunc(732, CSimpleList::CSimpleList) // loss of sign
-efunc(732, CSimpleList::Construct)   // loss of sign

-elib(1510) // afxdisp.h base class 'tagVARIANT' has no destructor
-elib(783)  // Line does not end with new-line
-elib(767)  // macro INTERFACE was defined differently (richole.h && olectl.h)
-elib(745)  // function has no specific type or class

-emacro(19,_T) // there is a spurious semi-colon in the use of macro _T in some locations

-esym(578,system) // declaration of 'system' hides 'system(const char *)' (afx.h)
-elibsym(1512)    // base class destructor is non-virtual
-elibsym(1932)    // base classes can be non-abstract

-function( exit, AfxAssertFailedLine )  // special assert for MFC
+libh(resource.h) // resource.h is considered library

⌨️ 快捷键说明

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