我正在尝试将可变数量的ofstream传递给一个接受initializer_list的函数,但似乎无法正常工作,并且会抛出关于如何匹配我的函数与任何定义的数组函数以及initializer_list结构的所有可能错误。
实际上,是否可能在initializer_list中传递ofstream的引用? test.cpp
实际上,是否可能在initializer_list中传递ofstream的引用? test.cpp
#include "extension.h"
ofstream outputFile, outputFile2;
int main(void) {
outputFile.open(("data_1.txt");
outputFile2.open("data_2.txt");
writeSomething({outputFile, outputFile2});
outputFile.close();
outputFile2.close();
}
extension.h
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <iostream>
#include <fstream>
#include <unistd.h>
#include <string.h>
#include <initializer_list>
using namespace std;
void writeSomething(initializer_list<ofstream&> args);
extension.cpp
#include "extension.h"
void writeSomething(initializer_list<ofstream&> args) {
for (auto f : args ) {
f << "hello" << endl;
}
}