Skip to content

Instantly share code, notes, and snippets.

@odeblic
Last active July 27, 2017 11:32
Show Gist options
  • Save odeblic/426d6b40a4a4262486068645cd4a9cb3 to your computer and use it in GitHub Desktop.
Save odeblic/426d6b40a4a4262486068645cd4a9cb3 to your computer and use it in GitHub Desktop.
Scope of variable within an if statement
#include <iostream>
int main()
{
int cond = 1;
if (int var = cond)
{
std::cout << "if: var=" << var << "\n";
}
else if (int var = cond)
{
std::cout << "if else: var=" << var << "\n";
}
else if (int var = cond)
{
std::cout << "if else: var=" << var << "\n";
// int var = 1; //error: redefine variable
}
else if (var = cond)
{
std::cout << "if else: var=" << var << "\n";
int var = 2; // warning: hide variable
}
else
{
std::cout << "else: var=" << var << "\n";
}
//auto x = int z = 1; //error: does not build
for (int i = 1; i <= 4; i++)
{
if (int j = i % 2)
{
std::cout << "for: i=" << j << "\n";
}
else
{
std::cout << "for: i=" << j << "\n";
}
}
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment