В локальной области (как функции), приведенные эти 4 примера:Есть ли разница в производительности с этими типами инициализации переменных?
(1)
int x;
int y;
// code...
x = 4;
y = 5;
(2)
int x = 4;
int y = 5;
// code...
(3)
// code...
int x = 4;
// code...
int y = 5;
(4)
// any other possibility
Существует некоторая разница в производительности в форме, которую я объявляю и инициирую свои переменные, или скомпилируйте ее для меня?
Редактировать
Я спрашиваю, потому что я часто читал, что лучше, чтобы поместить все объявления в самых первых строках, которые были бы лучше для производительности. Нравится:
func(){
int x,y,z,w;
long bla,ble;
MYTYPE weeee;
// more declarations..
//code..
}
Но я не знал почему.
Вы не можете делать # 3 в C, только на C++. – dasblinkenlight
Если есть какая-либо разница в производительности, это, вероятно, будет небольшим, чтобы измерить, что означает, что вы можете использовать любой метод, который, по вашему мнению, выглядит лучше всего, или думать более читабельным. –
@dasblinkenlight С C99 вы действительно можете. – unwind