Files
cpp02/ex01/Fixed/Fixed.hpp
2025-09-10 22:05:18 +02:00

62 lines
1.7 KiB
C++

/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* Fixed.hpp :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: aortigos <aortigos@student.42malaga.com +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2025/09/10 00:54:53 by tigos #+# #+# */
/* Updated: 2025/09/10 22:01:18 by aortigos ### ########.fr */
/* */
/* ************************************************************************** */
#ifndef FIXED_HPP
# define FIXED_HPP
# include <iostream>
# include <cmath>
class Fixed
{
private:
int value;
static const int fract = 8;
public:
// Default constructor
Fixed();
// · Constructor with constant integer
Fixed(const int nb);
// · Constructor with constant floating-point number
Fixed(const float nb);
// Copy constructor
Fixed(const Fixed &other);
// Copy assignment operator overload
Fixed& operator=(Fixed const &other);
// Destructor
~Fixed();
// getRawBits
int getRawBits( void ) const;
// setRawBits
void setRawBits( int const raw );
// · toFloat
float toFloat( void ) const;
// · toInt
int toInt( void ) const;
};
// · << operator overload
std::ostream& operator<<(std::ostream& os, Fixed const &other);
#endif