我經常寫這樣的代碼:未使用VAR
int result = someMethod(arg1,arg2,...);
assert(result==0)
比方說,斷言()是這樣定義的東西:
#ifdef DEBUG
#define assert(e) if(!e) printf("something's wrong");
#else
#define assert(...)
#endif
的第一段代碼將給予警告'結果'是一個未使用的變種。
我可以這樣做:
#ifdef DEBUG
int result = someMethod(arg1,arg2,...);
#else
someMethod(arg1,arg2,...);
#endif
assert(result==0)
,但似乎相當不幹了......
還有什麼我能做什麼呢?
你爲什麼重新定義'assert'?只是'#include'。另外請注意,通常使用'NDEBUG'而不是'DEBUG'。 –
對不起,迂腐,但C沒有辦法。 SomeMethod()應該被命名爲someFunction()。 –
@WilliamPursell你說得對,那很愚蠢:-) – Grav