Fixed compile issues

This commit is contained in:
2021-11-30 04:17:11 +01:00
parent 96b6c7e764
commit 072167ccf4
5 changed files with 81 additions and 60 deletions

View File

@@ -7,6 +7,7 @@
#include <list>
#include <forward_list>
#include <fstream>
#include <limits>
struct A {
int b;
@@ -18,7 +19,7 @@ struct A {
namespace io {
template <>
void write(std::ostream& os, A value) {
void write(std::ostream& os, const A& value) {
write<int>(os, value.b);
}
@@ -280,10 +281,9 @@ int main() {
Test("Write for std::array<char> (length)", [] {
std::fstream f("test.bin", std::ios::trunc | std::ios::in | std::ios::out);
std::array<char, 2> value = {'c', 'd'};
io::write<std::array<char, 2>>(f, value, true);
io::write<std::array<char, 2>>(f, value);
bool succes = 3 == f.tellg(); f.seekg(0); char c;
f.read(&c,1); succes &= (c & 0xff) == 2;
bool succes = 2 == f.tellg(); f.seekg(0); char c;
f.read(&c,1); succes &= (c & 0xff) == 'c';
f.read(&c,1); succes &= (c & 0xff) == 'd';
return succes;
@@ -291,7 +291,7 @@ int main() {
Test("Read for std::array<char> (as std::vector<char>, length)", [] {
std::ifstream f("test.bin");
std::vector<char> value = io::read<std::vector<char>>(f);
std::vector<char> value = io::read<std::vector<char>>(f, 2);
return value.size() == 2 && value[0] == 'c' && value[1] == 'd';
}());