Converting differences between VS 2010 and 2015
Hi I have this code that was written in VS2010:
unsigned long CHwFingerprint::toHash(wstring& wmisignature)
{
if (wmisignature.empty())
wmisignature = _empty;
hash<wstring> str_hash;
unsigned long hash = (unsigned long)str_hash(wmisignature);
return hash;
}
*wstring is just a Unicode string that we created and can be used as CString...
Now I get different results when I use this code in VS 2015.
For example if wmisignature=HMT351U6CFR8C-PB
Then the results will be as follow:
- VS 2010: hash= 229184272
- VS 2015: hash= 4005003184
Any ideas why?
c++ visual-studio-2010 visual-studio-2015 type-conversion
add a comment |
Hi I have this code that was written in VS2010:
unsigned long CHwFingerprint::toHash(wstring& wmisignature)
{
if (wmisignature.empty())
wmisignature = _empty;
hash<wstring> str_hash;
unsigned long hash = (unsigned long)str_hash(wmisignature);
return hash;
}
*wstring is just a Unicode string that we created and can be used as CString...
Now I get different results when I use this code in VS 2015.
For example if wmisignature=HMT351U6CFR8C-PB
Then the results will be as follow:
- VS 2010: hash= 229184272
- VS 2015: hash= 4005003184
Any ideas why?
c++ visual-studio-2010 visual-studio-2015 type-conversion
add a comment |
Hi I have this code that was written in VS2010:
unsigned long CHwFingerprint::toHash(wstring& wmisignature)
{
if (wmisignature.empty())
wmisignature = _empty;
hash<wstring> str_hash;
unsigned long hash = (unsigned long)str_hash(wmisignature);
return hash;
}
*wstring is just a Unicode string that we created and can be used as CString...
Now I get different results when I use this code in VS 2015.
For example if wmisignature=HMT351U6CFR8C-PB
Then the results will be as follow:
- VS 2010: hash= 229184272
- VS 2015: hash= 4005003184
Any ideas why?
c++ visual-studio-2010 visual-studio-2015 type-conversion
Hi I have this code that was written in VS2010:
unsigned long CHwFingerprint::toHash(wstring& wmisignature)
{
if (wmisignature.empty())
wmisignature = _empty;
hash<wstring> str_hash;
unsigned long hash = (unsigned long)str_hash(wmisignature);
return hash;
}
*wstring is just a Unicode string that we created and can be used as CString...
Now I get different results when I use this code in VS 2015.
For example if wmisignature=HMT351U6CFR8C-PB
Then the results will be as follow:
- VS 2010: hash= 229184272
- VS 2015: hash= 4005003184
Any ideas why?
c++ visual-studio-2010 visual-studio-2015 type-conversion
c++ visual-studio-2010 visual-studio-2015 type-conversion
edited Jan 1 at 11:40


Joey Mallone
2,23841833
2,23841833
asked Jan 1 at 9:06


Lee ShadmiLee Shadmi
91
91
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
The actual hash functions are implementation-dependent, so may differ from compilers...
and since C++14:
Hash functions are only required to produce the same result for the same input within a single execution of a program; this allows salted hashes that prevent collision denial-of-service attacks.
add a comment |
Right click the project and select properties.
Under configuration->General->Platform Tool Set, change to v100.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53994232%2fconverting-differences-between-vs-2010-and-2015%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
The actual hash functions are implementation-dependent, so may differ from compilers...
and since C++14:
Hash functions are only required to produce the same result for the same input within a single execution of a program; this allows salted hashes that prevent collision denial-of-service attacks.
add a comment |
The actual hash functions are implementation-dependent, so may differ from compilers...
and since C++14:
Hash functions are only required to produce the same result for the same input within a single execution of a program; this allows salted hashes that prevent collision denial-of-service attacks.
add a comment |
The actual hash functions are implementation-dependent, so may differ from compilers...
and since C++14:
Hash functions are only required to produce the same result for the same input within a single execution of a program; this allows salted hashes that prevent collision denial-of-service attacks.
The actual hash functions are implementation-dependent, so may differ from compilers...
and since C++14:
Hash functions are only required to produce the same result for the same input within a single execution of a program; this allows salted hashes that prevent collision denial-of-service attacks.
answered Jan 1 at 9:17
Jarod42Jarod42
118k12103189
118k12103189
add a comment |
add a comment |
Right click the project and select properties.
Under configuration->General->Platform Tool Set, change to v100.
add a comment |
Right click the project and select properties.
Under configuration->General->Platform Tool Set, change to v100.
add a comment |
Right click the project and select properties.
Under configuration->General->Platform Tool Set, change to v100.
Right click the project and select properties.
Under configuration->General->Platform Tool Set, change to v100.
answered Jan 1 at 12:16


Moti HamoMoti Hamo
8413
8413
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53994232%2fconverting-differences-between-vs-2010-and-2015%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown