C ++ Inicjalizacja elementów struktury stałej
Mam stałąstruct timespec
członek mojej klasy. Jak mam to zainicjować?
Jedynym szalonym pomysłem, jaki mam, jest czerpanie z siebietimespec
i daj mu konstruktora.
Dzięki wielkie!
#include <iostream>
class Foo
{
private:
const timespec bar;
public:
Foo ( void ) : bar ( 1 , 1 )
{
}
};
int main() {
Foo foo;
return 0;
}
Kompilacja zakończona błędami: source.cpp: W konstruktorze 'Foo :: Foo ()': source.cpp: 9: 36: błąd: brak pasującej funkcji dla wywołania 'timespec :: timespec (int, int)' source.cpp : 9: 36: uwaga: kandydatami są: W pliku zawartym w sched.h: 34: 0, z pthread.h: 25, z /usr/lib/gcc/i686-pc-linux-gnu/4.7.2/. ./../../../include/c++/4.7.2/i686-pc-linux-gnu/bits/gthr-default.h:41, z / usr / lib / gcc / i686-pc-linux -gnu / 4.7.2 /../../../../ include / c ++ / 4.7.2 / i686-pc-linux-gnu / bits / gthr.h: 150, z / usr / lib / gcc /i686-pc-linux-gnu/4.7.2/../../../../include/c++/4.7.2/ext/atomicity.h:34, z / usr / lib / gcc / i686 -pc-linux-gnu / 4.7.2 /../../../../ include / c ++ / 4.7.2 / bits / ios_base.h: 41, z / usr / lib / gcc / i686-pc -linux-gnu / 4.7.2 /../../../../ include / c ++ / 4.7.2 / ios: 43, z /usr/lib/gcc/i686-pc-linux-gnu/4.7 .2 /../../../../ include / c ++ / 4.7.2 / ostream: 40, z /usr/lib/gcc/i686-pc-linux-gnu/4.7.2/../ ../../../include/c++/4.7.2/iostream:40, z source.cpp: 1: time.h: 120: 8: uwaga: timespec :: timespec () time.h: 120: 8: uwaga: kandydat oczekuje 0 argumentów, 2 podany czas.h: 120: 8: uwaga: constexpr timespec :: timespec (const timespec &) time.h: 120: 8: note: kandydat oczekuje 1 argumentu, 2 podany czas.h: 120: 8: uwaga: constexpr timespec :: timespec (timespec &&) time.h: 120: 8: note: kandydat oczekuje 1 argumentu, 2 podanego