Включаете ли вы заголовок «string», когда библиотека, такая как «iostream», уже предоставляет решение?
Пример. Включаете ли вы библиотеку строк, если вы уже включили библиотеку iostream?Какой правильный профессиональный метод?
#include <iostream>
#include <fstream>
using namespace std;
int main() {
ifstream fin;
fin.open("input.txt");
string data;
fin >> data;
cout << data << endl; // Works with <iostream>, and without <string>
fin.close();
return 0;
}
Пример 2: Использовать библиотеку строк, если другая библиотека обеспечивает функциональность, даже если программа компилируется без строки?
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
int main() {
ifstream fin;
fin.open("input.txt");
string data;
fin >> data;
cout << data << endl; // Even though <iostream> allowed program to compile, we include the <string> library.
fin.close();
return 0;
}
Полученные баллы за мое задание по программированию класса CSC 101, потому что, хотя программа работала, учитель сказал, что при использовании строкового типа данных мне нужно было включить строковую библиотеку.Хотя технически это было нормально без этого возможно. Вот вопрос.