Files
strangecpp/cpplinker/09_debug_linker/math_lib.hpp
Pratchaya Khansomboon 7353c470a6 Add examples for different utilities
Change-Id: I7ba2435c9ffaa10ccb67a87693ac961a26341ffe
2026-02-24 13:46:16 +01:00

26 lines
694 B
C++

#pragma once
namespace Math {
// Free functions — each becomes a mangled symbol, e.g.
// Math::sqrt(double) → _ZN4Math4sqrtEd
// Math::square(double) → _ZN4Math6squareEd
// Math::cube(double) → _ZN4Math4cubeEd
double sqrt(double x);
double square(double x);
double cube(double x);
// Class — member functions add even richer mangling
class Vector2D {
public:
double x, y;
Vector2D(double x, double y);
double length() const;
Vector2D add(const Vector2D& other) const;
Vector2D scale(double factor) const;
double dot(const Vector2D& other) const;
};
} // namespace Math