Возможный дубликат:
Почему это ошибка при использовании пустого набора скобок для вызова конструктора без аргументов?
В ответе этот вопрос он сказал, что
ints по умолчанию сконфигурирован как 0, как если бы вы инициализировали их с помощью функции int(). Другие примитивные типы инициализируются аналогично (например, double(), long(), bool() и т.д.).
Пока я объяснял это коллеге, я составил следующий код: скомпилирован (gcc-4.3.4) и запустил, и наблюдал неожиданное поведение.
#include <iostream>
int main() {
int i();
std::cout << i << std::endl; // output is 1
}
Почему вывод 1
, но 0
?