it means that an assertion should never change the state of the application.
For example, an assertion that sets a member field of the class it's contained in has a side effect. As the assertion will not run unless assertions are enabled this side effect cannot be relied upon to exist at runtime.
Of course you might under extremely rare conditions want this (for example if you want your class to be able to detect whether assertions are enabled or not) but I can't think of any practical reasons most people would ever encounter in real life.
Joined: Jan 11, 2005
greatly thank to Wenting !!
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com
subject: what's "Assertion expressions should not contain side effects." mean?