Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 128513
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T05:38:51+00:00 2026-05-11T05:38:51+00:00

I noticed this interesting use of the this keyword while viewing the disassembled code

  • 0

I noticed this interesting use of the ‘this’ keyword while viewing the disassembled code of Int32.GetHashCode() in .NET Reflector:

public override int GetHashCode() {     return this; } 

I always thought ‘this’ is only used with reference types not value types. In the code above, will boxing be used every time you try to get the hash code of an int?

From the documentation of the ‘this’ keyword in MSDN: – The this keyword refers to the current instance of the class

Regards

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T05:38:52+00:00Added an answer on May 11, 2026 at 5:38 am

    Yes, this is valid for value types. It does not lead to boxing. While it references the value-type, it is not a reference in the same vein as reference-type references – it is a compile/development time convenience rather than a runtime reference.

    Section 7.5.7 of the C# Specification states:

    • When this is used in a primary-expression within an instance constructor of a struct, it is classified as a variable. The type of the variable is the instance type (§10.3.1) of the struct within which the usage occurs, and the variable represents the struct being constructed. The this variable of an instance constructor of a struct behaves exactly the same as an out parameter of the struct type—in particular, this means that the variable must be definitely assigned in every execution path of the instance constructor.
    • When this is used in a primary-expression within an instance method or instance accessor of a struct, it is classified as a variable. The type of the variable is the instance type (§10.3.1) of the struct within which the usage occurs.
      • If the method or accessor is not an iterator (§10.14), the this variable represents the struct for which the method or accessor was invoked, and behaves exactly the same as a ref parameter of the struct type.
      • If the method or accessor is an iterator, the this variable represents a copy of the struct for which the method or accessor was invoked, and behaves exactly the same as a value parameter of the struct type.
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Well, this is an interesting problem. I have an ASP.NET MVC3 Intranet application running
I've noticed this interesting problem: function a() { this.aprop = 1; } function b()
I noticed this interesting behaviour of the g++ compiler, if I add a -O3
I have recently noticed how interesting Visual Studio's macros are. I did not use
I found an interesting issue that confused me. I noticed it when I use
I noticed something very interesting this afternoon - when I clear my browser cache
Noticed this today when a patch was submitted with the following line: lblCompletionTime.Text =
I noticed This question , but my question is a bit more specific. Is
I noticed this site http://aspnetwebstack.codeplex.com/ . Is web forms source available?
I just noticed this about a week ago. I'm storing data about the current

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.