Deleting a user would be problematic as their posts would no longer belong to anyone.
It doesn't have to be like that. All you'd need to do is create an extra account that only the Admin/Staff has any real access too, and have an order of operations as thus:
Change the PosterID of all posts that belong to the person that is deleting their account to the PosterID of this Staff/System account.
Delete all other content that still references the account in any way.
This way, when you go to delete your account, all the posts/threads are given to a user that is owned by the system. Best to name it something like "Archive", or "System", or "Deleted" so that people know what is going on. This way, the posts stay while the user account is deleted, and in the end no content is lost, as well as people who wish to delete their accounts can still do so.
Saying that, I haven't come across ANY forums that let you delete your account. I've spoken to Admins about deleting accounts, but most of them just say that they don't do it. Why, I really don't know because if you use the above method it doesn't hurt anyone, and it makes your forum more accessible for people because they can feel like they can come, post and then just leave should they find themselves in an awkward position.